数据乱码: 编码与反编码

        最近写小项目时遇到这样的一个问题, 将json字符串(未乱码)传给前台进行Ajax处理,数据变成了乱码。关于前后台交互的字符编码的过滤器有书写,但是无法解决问题。

下面先来看问题:

这里将json对象转json字符串然后回传,在之前打印了回传数据。<根据区取到的街>

可以看到这里数据是没有问题的,ajax中接收数据后进行alert弹出数据

那么现在跑起来,到前台中去看数据显示

数据是得到了,但是弹出了一串问号。f12开发者模式:参数中区的id是取到了,在看响应id也都取到了,街道的name乱码了

我想的是ajax处理的过程中把数据编码类型搞错了,我马上看了两个文件的编码集,都为UTF-8。文件编码统一了,那就只能从ajax的四个请求条件中找问题了,于是在条件中加入了这样的代码

但是发现问题还是没有解决。ajax中处理的数据类型到底是什么?然后去网上查了很多ajax处理中文乱码的问题

解决方案:

        后台发送数据的时候对中文部分进行编码化,在ajax中对中文部分进行解码。

       关于编码的规则,我觉得这两篇博客写的很好编码与解码规则1

                                                                                编码与解码规则2

以下为我的处理方案:

后台进行编码:

 前台进行解码:(需要解码两次)

 前台查看响应

通过前后台操作相同的编码集进行解码与编码解决了问题。

猜你喜欢

转载自blog.csdn.net/qq_42773863/article/details/81586603