背景

在升级组内用到的一个较为老的系统的时候,发布上去以后系统正常,前端展示出了问题,后端接口中的中文的字段在页面显示为?,导致部分功能不能使用。
发布后的异常显示:
image.png
发布前的正常显示:
image.png

解决办法

通过前端调试查看调用的接口,发现后端数据到前端的接口用的是jackson.databind包的ObjectMapper.writeValueAsString()方法,在升级过程中处理了这个包的冲突,试着把包的版本降低,发现还是不行,排除了这个包的版本问题。开始怀疑是spring包升级导致的问题,在查看相关问题的时候发现RequestMapping注解中可以通过produces去更改编码的格式,在注解中将produces加上编码的限制问题解决。

@RequestMapping(value = "/api", produces = "application/json; charset=utf-8")

nizaikanwome
7 声望0 粉丝

引用和评论

0 条评论