From: Ian Jackson Date: Sun, 17 May 2020 00:53:11 +0000 (+0100) Subject: set ct on updates X-Git-Tag: otter-0.2.0~1616 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=5727ee57d5523abf48b2a25424ea3f3b1a5d69da;p=otter.git set ct on updates --- diff --git a/src/imports.rs b/src/imports.rs index 9950aaab..2f8945de 100644 --- a/src/imports.rs +++ b/src/imports.rs @@ -12,8 +12,9 @@ pub use rocket_contrib::helmet::*; pub use rocket_contrib::templates::Template; pub use rocket::State; -pub use rocket::http::{Status,RawStr}; +pub use rocket::http::{Status,RawStr,ContentType}; pub use rocket::request::{FromParam,FromRequest,FromFormValue,LenientForm}; pub use rocket::response::NamedFile; +pub use rocket::response; pub type E = anyhow::Error; diff --git a/src/main.rs b/src/main.rs index 2945fcc6..e4cee117 100644 --- a/src/main.rs +++ b/src/main.rs @@ -40,6 +40,14 @@ impl<'r> FromParam<'r> for CheckedResourceLeaf { } } +#[get("/updates")] +fn updates() -> response::Content> { + let ch = response::Stream::chunked(b"42".as_ref(), 1); + let ct = ContentType::parse_flexible("text/event-stream; charset=utf-8"). + unwrap(); + response::content::Content(ct,ch) +} + #[get("/")] fn resource(leaf : CheckedResourceLeaf) -> io::Result { let template_dir = "templates"; // xxx @@ -58,6 +66,7 @@ fn main() { .mount("/", routes![ index, resource, + updates, ]) .launch(); }