一个爬虫项目,ajax请求,请求对方接口的数据。
浏览器F12查看的返回数据是正常的,但是我用postman去请求就会返回这样的数据
这是什么情况啊?该怎么解决呢?
一个爬虫项目,ajax请求,请求对方接口的数据。
浏览器F12查看的返回数据是正常的,但是我用postman去请求就会返回这样的数据
这是什么情况啊?该怎么解决呢?
首先这个不是乱码,而是JSON标准规范中的unicode support: https://tools.ietf.org/id/dra...
简单来说就是为了规避字符集的问题,JSON标准规范中定义unicode string应该定义为unicode转义字符,也就是你看到的哪些\U
转义字符,这些都是合法的JSON定义。
至于解析问题,随便一个JSON解析库都可以处理,比如JS标准库中的JSON.parse()
方法:
> JSON.parse('{"message":"\u4e2d\u6587"}')
{ message: '中文' }
以及Python中的json.loads()
方法:
>>> import json
>>> json.loads('{"message":"\u4e2d\u6587"}')
{'message': '中文'}
>>>
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
这不是乱码,只是转码汉字而已,正常
JSON.parse()
就可以了。