tomcat8.5接收中文参数乱码,重启后恢复正常,求排查思路。

问题描述:
普通web系统,前端后端都没有修改的前提下,突然后端接收到的中文参数全部乱码。tomcat重启后恢复正常。
运行环境:
tomcat8.5 , springboot,机器部署在阿里云上
接口日志记录下的变化:
productName:["农商"] productName:["æ\u0099®é\u0099\u0080"]
前端post请求的参数:
&productName=%E6%99%AE%E9%99%80

请求过程中仅有前端 - Nginx - 后端 ,日志中正常到异常这段时间,没有任何文件修改。想问一下各位,这种传参乱码的原因可能出在哪?要怎么排查?要排查tomcat么?重启后就正常的道理是什么?

通过这个可以将你这个乱码的字符还原,发现是 普陀


System.out.println(new String(\u0099®é\u0099\u0080".getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.UTF_8));

%E6%99%AE%E9%99%80这是浏览器对中文进行编码了

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632