diff options
| author | Fuwn <[email protected]> | 2025-06-05 14:17:46 +0000 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-06-05 14:17:46 +0000 |
| commit | d64ff3c866349fd5f4240e2fd4de7b5d0572c771 (patch) | |
| tree | 282de7a0e2fdb47209ec9d4eed11dd782e650c46 | |
| parent | chore: Bump MSRV (diff) | |
| download | september-d64ff3c866349fd5f4240e2fd4de7b5d0572c771.tar.xz september-d64ff3c866349fd5f4240e2fd4de7b5d0572c771.zip | |
fix(response): Always proxy images as raw bytes
| -rw-r--r-- | Cargo.lock | 4 | ||||
| -rw-r--r-- | Cargo.toml | 2 | ||||
| -rw-r--r-- | src/response.rs | 10 |
3 files changed, 13 insertions, 3 deletions
@@ -856,9 +856,9 @@ dependencies = [ [[package]] name = "germ" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb35c4432f7fdc139b68689e8a0741d118392566f8c63ca725971acaaa4b2ea" +checksum = "603354f11eb56ae667d4f1ec32162b90a01c8c40c70195f5386f2fc65e5aa272" dependencies = [ "anyhow", "rustls", @@ -22,7 +22,7 @@ opt-level = 3 [dependencies] # Gemini -germ = { version = "0.4.6", features = ["ast", "meta"] } +germ = { version = "0.4.7", features = ["ast", "meta"] } # HTTP actix-web = "4.11.0" diff --git a/src/response.rs b/src/response.rs index 75fdb3b..1a68b08 100644 --- a/src/response.rs +++ b/src/response.rs @@ -93,6 +93,16 @@ pub async fn default( timer = Instant::now(); + if response.meta().starts_with("image/") { + if let Some(content_bytes) = &response.content_bytes() { + return Ok( + HttpResponse::build(actix_web::http::StatusCode::OK) + .content_type(response.meta().as_ref()) + .body(content_bytes.to_vec()), + ); + } + } + let mut html_context = if configuration.is_raw() { String::new() } else { |