Я пытаюсь отправить файл, который я включил в двоичный файл с include_bytes!
в приложении Iron. Я хочу получить один файл для своего приложения, и для этого потребуется очень мало файлов HTML, CSS и JS. Вот небольшая тестовая установка, с которой я возился:
extern crate iron;
use iron::prelude::*;
use iron::status;
use iron::mime::Mime;
fn main() {
let index_html = include_bytes!("static/index.html");
println!("Hello, world!");
Iron::new(| _: &mut Request| {
let content_type = "text/html".parse::<Mime>().unwrap();
Ok(Response::with((content_type, status::Ok, index_html)))
}).http("localhost:8001").unwrap();
}
Конечно, это не работает, поскольку index_html
относится к типу &[u8; 78]
src/main.rs:16:12: 16:26 error: the trait `modifier::Modifier<iron::response::Response>` is not implemented for the type `&[u8; 78]` [E0277]
src/main.rs:16 Ok(Response::with((content_type, status::Ok, index_html)))
Поскольку я новичок в Rust and Iron, я не знаю, как к этому подойти. Я попытался выучить кое-что из документации Iron, но я думаю, что моих знаний по Rust недостаточно, чтобы по-настоящему понять их, особенно то, что эта черта modifier::Modifier
должна быть.
Как я могу этого добиться? Могу ли я скрыть тип своего статического ресурса во что-то, что Iron примет, или мне нужно как-то реализовать эту черту Modifier
?