ajax传输json数据格式乱码_解决Ajax加载JSon数据中文乱码问题

一、问题描述

使用zTree的异步刷新父级菜单时,服务器返回中文乱码,但项目中使用了SpringMvc,已经对中文乱码处理,为什么还会出现呢?

此处为的异步请求的配置:

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"

}

]

二、解决方案

经过排查,发现是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

总结

以上所述是小编给大家介绍的解决Ajax加载JSon数据中文乱码问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/406292.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在命令提示符下输入的命令

ASSOC 显示或修改文件扩展名关联。ATTRIB 显示或更改文件属性。BREAK 设置或清除扩展式 CTRLC 检查。BOOTCFG 设置 boot.ini 文件的属性以便控制启动加载。CACLS 显示或修改文件的访问控制列表(ACL)。CALL 从另一个批处理…

(转载)WebSphere MQ安装过程

参考文档: http://www.ibm.com/developerworks/cn/linux/linux-speed-start/l-ss-mq/ 转载于:https://www.cnblogs.com/lichmama/p/4312577.html

Vue.config.productionTip = false 是什麽意思

Vue.config.productionTip false 是什麽意思

non-aggregates cannot be initialized with initializer list

From: http://blog.csdn.net/sp_daiyq/article/details/7008990 我定义了一个结构体,示意如下: [cpp] view plaincopyStruct A { int x; CString test; }; 然后我定义一个变量同时对其进行串行初始化: A a {0, "hello&q…

xxljob 配置具体定时任务_记一次xxl-job定时任务没有触发的问题

当初选了xxl-job就是因为它的触发机制比较靠谱,到点准时发,而且有日志可以看。 昨天突然发现部署在一台本地机器上的xxl-job到点并没有触发,且没有任何日志。通过管理页面查询触发日志,发现日志还是有的,只是和筛选条件不甚匹配。比如选取了昨天的日志,结果集中包含了今天…

TOMCAT启动完成但是ECLIPSE仍然显示starting....

最近重新部署了一个TOMCAT服务,但是启动碰到个问题,虽然TOMCAT控制台已显示启动成功,但是ECLIPSE右下角仍然一直显示STARTING,最后TOMCAT超时,启动失败。之前以为是拷贝工程的问题,但其实是SERVER配置的问题…

StatusCodeError: 400 - “{\“code\“:40000,\“error\“:\“错误 Error: 登录用户不是该小程序的开发者

StatusCodeError: 400 - “{\“code\“:40000,\“error\“:\“错误 Error: 登录用户不是该小程序的开发者

例解 autoconf 和 automake 生成 Makefile 文件

From: http://www.ibm.com/developerworks/cn/linux/l-makefile/ 简介: 本文介绍了在 linux 系统中,通过 Gnu autoconf 和 automake 生成 Makefile 的方法。主要探讨了生成 Makefile 的来龙去脉及其机理,接着详细介绍了配置 Configure.in 的方…

爱慕内衣信息化颠覆流程重构供应链

通过IT,爱慕内衣进行了供应链流程的颠覆和重构。在北京慕集团首席信息官赵先生脑海中,一直有着这样一幅“大图景”:只要需要,老总在自己的办公室里能看到每一寸原料的采购情况,每一件成衣的生产和销售情况,…

mysql中 课程1比课程2成绩高_小菜菜mysql练习解读分析1——查询 01 课程比 02 课程成绩高的学生的信息及课程分数...

查询" 01 "课程比" 02 "课程成绩高的学生的信息及课程分数好的,第一道题,刚开始做,就栽了个跟头,爽歪歪,至于怎么栽跟头的——需要分析题目,查询的是,查询的是(1)学生的信息…

专门讲讲这个MYSQL授权当中的with grant option的作用

对象的owner将权限赋予某个用户(如:testuser1) grant select ,update on bd_corp to testuser1 [with grant option ]1.如果带了 with grant option 那么用户testuser1可以将select ,update权限传递给其他用户( 如testuser2)grant select,update on bd_corp to testuser22.如果…

HBuilder更改为自定义的背景颜色

HBuilder更改为自定义的背景颜色

Linux下Makefile的automake生成全攻略

From: http://fanqiang.chinaunix.net/system/linux/2005-12-14/3926.shtml 作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要…

mysql中limit 0 20_MYSQL 中 LIMIT 用法

mapper文件中的sql:--------------------------------------------------------------------------------------------(在实体类中定义的属性)start:从第几条记录开始。size:读取几条记录。select id"findAllUsers" parameterType"Map" resultT…

VSFTP配置详解+虚拟用户的支持

FTP 搭建第一部分:理论一. FTP服务器的基本原理1. 基本概念:ftp是文件传输协议,(file transport portocol)2. 数据传输模式:主动模式和被动模式 (要和binary ascii 区分一下)3. 使用…

button的图文设置

UIButton *button [UIButton buttonWithType:UIButtonTypeCustom];//button的类型 button.frame CGRectMake(100, 100,90, 90);//button的frame button.backgroundColor [UIColor cyanColor];//button的背景颜色 // [button setBackgroundImage:[UIImage imageNamed:&q…