web前端|js教程
javascript,Ajax,JSon
web前端-js教程A、问题描述
什么是护肤品源码,ubuntu怎么打开界面,python数据爬虫网站,php简化写法,属于seo范围lzw
使用zTree的异步刷新父级菜单时,服务器返回中文乱码,但项目中使用了SpringMvc,已经对中文乱码处理,为什么还会出现呢?
preparedstatement 源码,vscode提示提取扩展时出错,ubuntu 开发 安卓,tomcat实际使用,sqlite表 excel,篮球网页设计,换服务器 icp备案,discuz勋章插件,b站+前端框架,爬虫屋发霉,nl2br php,企业seo教程,springboot注解样例,oschina网站源码,漂亮的html5网页,h5 手机登录页面模板,网站后台新闻不显示如何刷新,登录页面背景素材,人事信息管理系统 免费下载,java程序飞机大战素材lzw
此处为的异步请求的配置:
易语言钓鱼盗号源码下载,ubuntu终端光标移动,怎么去除家里爬虫,php焊接,seo 扩展程序lzw
Java代码
async: { enable: true, url: basePath + /sysMenu/listSysMenu, autoParam: ["id=parentId"] }
SpringMvc中文字符处理:
Java代码
application/json;charset=UTF-8 text/html;charset=UTF-8
返回的结果有中文乱码:
Js代码
[ {"menuId": "880095098165986816","menuName": "????","parentId": "880095098165986815","menuUrl": "http://localhost:8080/imovie-manage/sysMenu/listSysMenuUI","menuIcon": "","menuSort": 1,"isEnable": 1,"parentMenuName": "??","id": "880095098165986816","name": "????","pId": "880095098165986815" }, {"menuId": "880095098165986817","menuName": "???????","parentId": "880095098165986815","menuUrl": "http://localhost:8080/imovie-manage/sysMenu/treeSysMenuUI","menuIcon": "","menuSort": 1,"isEnable": 1,"parentMenuName": "??","id": "880095098165986817","name": "???????","pId": "880095098165986815" } ]
B、解决方案
经过排查,发现是SpringMvc中文字符处理的supportedMediaTypes少了一种类型。
从浏览器发送的请求来看:
异步刷新使用的是post请求,但从服务器返回的时候,Content-Type为:text/plain;charset=ISO-8859-1
charset是ISO-8859-1,而不是UTF-8,而SpringMvc处理的中文乱码没有包含这种类型,所以导致中文乱码。
所以最后的解决方法是在SpringMvc中文处理加上text/plain这个类型,如下:
Java代码
text/plain;charset=UTF-8
具体如下:
Java代码
application/json;charset=UTF-8 text/html;charset=UTF-8 text/plain;charset=UTF-8