做了一个东西,在ajax中的responseHeader中取到所要的值,将其显示出来,但是里面出现了中文乱码,
在这里我重现一下这个问题。
看见了 最后的一行的”stepName”:”SQL%E6%9F%A5%E8%AF%A2” 这一行
response中设置了utf-8的格式进行解码所以最后解码成了:”stepName”:”SQL查询”
我们可以看看客户端和服务器之间什么地方需要进行编码。
我们这个出现的问题就是 在response传过来的时候 这个值编码的格式是URL的编码格式 每一个前面加上%
但是浏览器的时候,使用了utf-8的格式进行了解码 所以会出现在这样的问题。
解决方法:
1. 进行utf-8的编码 escape(str)
2. 进行decodeURI的解码 decodeURI(escape(str))
这样的话 就出现了我们想要的东西:
“SQL%E6%9F%A5%E8%AF%A2” —->”SQL查询”—->”SQL%E6%9F%A5%E8%AF%A2”—->”查询”。