diff --git a/server-rs/crates/api-server/src/raw_image.rs b/server-rs/crates/api-server/src/raw_image.rs index e7bb2ff53..106698345 100644 --- a/server-rs/crates/api-server/src/raw_image.rs +++ b/server-rs/crates/api-server/src/raw_image.rs @@ -278,7 +278,17 @@ async fn read_multipart_image( name: &str, total_bytes: &mut usize, ) -> Result { - let mime_type = field.content_type().unwrap_or_default().to_string(); + let mime_type = field + .content_type() + .map(|value| { + value + .split(';') + .next() + .unwrap_or_default() + .trim() + .to_string() + }) + .unwrap_or_default(); if !mime_type.eq_ignore_ascii_case("image/png") { return Err(bad_request(format!("{name} 必须为 image/png"))); }