MultipartFile接收上传文件乱码问题(zuul网关、gateway网关)

静悠

关注

阅读 72

2023-02-28


场景

表单上传,后台MultipartFile接收。
本地测试不乱码,在服务器上乱码。

解决方案

继续测试,发现直接用ip+端口上传不是乱码。
用域名或nginx是乱码。

因此可以猜测是网关或nginx的问题。
先调整nginx,http模块或server模块加 ​​​chatset utf-8;​​ 实测无效。

继续找问题,百度了下说是zuul gateway的一个缺陷。
原因是gateway过滤器默认使用 US-ASCII 编码。

解决办法:
1、spring-web 5.6以上版本已修复该缺陷。
2、手动修改gateway项目的filter过滤器(需要覆盖,因为是class类里的内容)。
3、zuul.servlet-path=/

很明显,第三种方案更快捷简便。

application.properties配置:

zuul.servlet-path=/

application.yml配置:

zuul:
servlet-path: /

修改配置,重启gateway项目,发现果然不乱码了,问题解决。


精彩评论(0)

0 0 举报