From d69f7fc08c491817358d944ab8177152d3afea19 Mon Sep 17 00:00:00 2001 From: alyx Date: Wed, 3 Apr 2024 11:49:07 -0400 Subject: Use http::Response for constructing replies --- Cargo.toml | 1 + src/main.rs | 25 ++++++++++++++----------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 79b1a3b..82a8347 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,6 +14,7 @@ dotenv = "0.15.0" duration-str = "0.5.1" env_logger = "0.10.0" handlebars = { version = "4.3.7", features = ["dir_source"] } +http = "0.2.9" log = "0.4.19" reqwest = { version = "0.11.18", features = ["gzip", "deflate", "brotli", "json"] } serde = { version = "1.0.183", features = ["derive", "rc", "alloc"] } diff --git a/src/main.rs b/src/main.rs index 6669791..e3ac9eb 100644 --- a/src/main.rs +++ b/src/main.rs @@ -51,20 +51,23 @@ async fn main() { let (theme, res) = lfm_embed::theming::render_theme(q.theme.as_deref(), &data); log::debug!(target: "lfm_embed::server::user", "Using theme {theme}"); + match res { Err(status) => - Box::new(warp::reply::with_status(warp::reply::html("

Internal Server Error.

"), status)) - as Box, + http::Response::builder() + .status(status) + .header("Content-Type", "text/html") + .body("

Internal Server Error.

Occurred when templating, check the logs.

".into()) + .unwrap(), + Ok(contents) => - Box::new(warp::reply::with_header( - warp::reply::with_header( - warp::reply::with_status( - warp::reply::html( - contents - ), status - ), "Refresh", dur.as_secs() - ), "X-Selected-Theme", theme - )) as Box + http::Response::builder() + .status(status) + .header("Refresh", dur.as_secs()) + .header("X-Selected-Theme", theme) + .header("Content-Type", "text/html") + .body(contents) + .unwrap() } }); -- cgit v1.2.3-70-g09d2