From 76f18a65d3f36431ca8e83c1fb62f5f326b188fd Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sat, 15 Mar 2025 17:36:09 +0800 Subject: Detect static mime type instead of assuming everything's CSS --- req.ha | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/req.ha b/req.ha index e9fd6fc..ed7dcb2 100644 --- a/req.ha +++ b/req.ha @@ -5,6 +5,7 @@ use fmt; use fs; use htmpl; use io; +use mime; use net::http; use net::uri; use strconv; @@ -73,7 +74,16 @@ fn handlereq(conn: io::handle, request: *http::request) (void | io::error | nome }; defer io::close(file)!; - start_response(conn, 200, "text/css")?; + fmt::println(fs_segments[len(fs_segments) - 1])!; + + let ext = strings::rcut(fs_segments[len(fs_segments) - 1], ".").1; + + let mimetype = match (mime::lookup_ext(ext)) { + case let m: *mime::mimetype => yield m.mime; + case null => yield "application/octet-stream"; + }; + + start_response(conn, 200, mimetype)?; io::copy(conn, file)?; case => -- cgit v1.2.3