微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajax返回json数据乱码

在使用ajax请求后端返回json数据时,有时会出现乱码的情况。造成乱码的原因可能有多种,下面我们逐一分析。

ajax返回json数据乱码

第一种情况:json数据本身编码错误

{
    "name": "小明","age": 20,"sex": "男","phone": "123456789"
}

上述json数据中,如果"小明"这个字符串使用了GBK编码,而返回的头部信息却声明了UTF-8编码,那么在客户端解析时就会出现乱码。因此,在开发时需要确认后台返回的json数据是否使用了正确的编码。

第二种情况:ajax请求头部信息错误

$.ajax({
    url: "http://xxx.com/api",type: "GET",dataType: "json",contentType: "application/json;charset=gbk",success: function(data) {
        console.log(data);
    }
})

上述代码中,我们在contentType中规定了请求头部信息的编码为GBK,而实际返回的json数据却是使用UTF-8编码的。因此,在开发时需要保证请求头部信息后台返回的json数据编码一致。

第三种情况:js文件编码错误

如果我们在编写ajax请求的js文件时,使用了GBK编码,那么在浏览器加载该文件时就会出现编码错误。因此,我们需要使用UTF-8编码写js文件,以保证能够正确地解析后端返回的json数据。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐