Skip to content

Commit 6e236db

Browse files
authored
Set correct MIME types in re_web_viewer_server (#1602)
1 parent 1790f0d commit 6e236db

File tree

1 file changed

+35
-13
lines changed
  • crates/re_web_viewer_server/src

1 file changed

+35
-13
lines changed

crates/re_web_viewer_server/src/lib.rs

+35-13
Original file line numberDiff line numberDiff line change
@@ -65,17 +65,29 @@ impl Service<Request<Body>> for Svc {
6565

6666
#[cfg(not(feature = "__ci"))]
6767
fn call(&mut self, req: Request<Body>) -> Self::Future {
68-
let rsp = Response::builder();
69-
70-
let bytes = match req.uri().path() {
71-
"/" | "/index.html" => &include_bytes!("../web_viewer/index.html")[..],
72-
"/favicon.ico" => &include_bytes!("../web_viewer/favicon.ico")[..],
73-
"/sw.js" => &include_bytes!("../web_viewer/sw.js")[..],
68+
let response = Response::builder();
69+
70+
let (mime, bytes) = match req.uri().path() {
71+
"/" | "/index.html" => ("text/html", &include_bytes!("../web_viewer/index.html")[..]),
72+
"/favicon.ico" => (
73+
"image/vnd.microsoft.icon",
74+
&include_bytes!("../web_viewer/favicon.ico")[..],
75+
),
76+
"/sw.js" => (
77+
"text/javascript",
78+
&include_bytes!("../web_viewer/sw.js")[..],
79+
),
7480

7581
#[cfg(debug_assertions)]
76-
"/re_viewer.js" => &include_bytes!("../web_viewer/re_viewer_debug.js")[..],
82+
"/re_viewer.js" => (
83+
"text/javascript",
84+
&include_bytes!("../web_viewer/re_viewer_debug.js")[..],
85+
),
7786
#[cfg(not(debug_assertions))]
78-
"/re_viewer.js" => &include_bytes!("../web_viewer/re_viewer.js")[..],
87+
"/re_viewer.js" => (
88+
"text/javascript",
89+
&include_bytes!("../web_viewer/re_viewer.js")[..],
90+
),
7991

8092
"/re_viewer_bg.wasm" => {
8193
#[cfg(feature = "analytics")]
@@ -84,24 +96,34 @@ impl Service<Request<Body>> for Svc {
8496
#[cfg(debug_assertions)]
8597
{
8698
re_log::info_once!("Serving DEBUG web-viewer");
87-
&include_bytes!("../web_viewer/re_viewer_debug_bg.wasm")[..]
99+
(
100+
"application/wasm",
101+
&include_bytes!("../web_viewer/re_viewer_debug_bg.wasm")[..],
102+
)
88103
}
89104
#[cfg(not(debug_assertions))]
90105
{
91-
&include_bytes!("../web_viewer/re_viewer_bg.wasm")[..]
106+
(
107+
"application/wasm",
108+
&include_bytes!("../web_viewer/re_viewer_bg.wasm")[..],
109+
)
92110
}
93111
}
94112
_ => {
95113
re_log::warn!("404 path: {}", req.uri().path());
96114
let body = Body::from(Vec::new());
97-
let rsp = rsp.status(404).body(body).unwrap();
115+
let rsp = response.status(404).body(body).unwrap();
98116
return future::ok(rsp);
99117
}
100118
};
101119

102120
let body = Body::from(Vec::from(bytes));
103-
let rsp = rsp.status(200).body(body).unwrap();
104-
future::ok(rsp)
121+
let mut response = response.status(200).body(body).unwrap();
122+
response.headers_mut().insert(
123+
hyper::header::CONTENT_TYPE,
124+
hyper::header::HeaderValue::from_static(mime),
125+
);
126+
future::ok(response)
105127
}
106128
}
107129

0 commit comments

Comments
 (0)