From d7d585ed421497492af72f81c8a50cf9df3ee794 Mon Sep 17 00:00:00 2001 From: MaDaLei Date: Fri, 17 Apr 2026 20:24:48 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=9B=B4=E6=8E=A5header=E8=AE=BE?= =?UTF-8?q?=E7=BD=AEContent-Type=EF=BC=8C=E5=BD=BB=E5=BA=95=E9=81=BF?= =?UTF-8?q?=E5=85=8Dcharset=E6=B3=A8=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/petstore/controller/FileController.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/petstore/controller/FileController.java b/src/main/java/com/petstore/controller/FileController.java index cdccfb9..c71e365 100644 --- a/src/main/java/com/petstore/controller/FileController.java +++ b/src/main/java/com/petstore/controller/FileController.java @@ -78,8 +78,9 @@ public class FileController { // 去掉可能的 charset 参数,避免 video Content-Type 被设为 "video/mp4;charset=UTF-8" int semi = contentType.indexOf(';'); if (semi >= 0) contentType = contentType.substring(0, semi).trim(); + // 直接用 header 设置 Content-Type,绕过 Spring 的 Accept-Charset 逻辑 return ResponseEntity.ok() - .contentType(MediaType.parseMediaType(contentType)) + .header("Content-Type", contentType) .body(new FileSystemResource(file)); } @@ -97,8 +98,9 @@ public class FileController { // 去掉可能的 charset 参数,避免 video Content-Type 被设为 "video/mp4;charset=UTF-8" int semi = contentType.indexOf(';'); if (semi >= 0) contentType = contentType.substring(0, semi).trim(); + // 直接用 header 设置 Content-Type,绕过 Spring 的 Accept-Charset 逻辑 return ResponseEntity.ok() - .contentType(MediaType.parseMediaType(contentType)) + .header("Content-Type", contentType) .body(new FileSystemResource(file)); }