问题描述
今天在用 Python 调用百度地图 API 返回 JSON 数据时候遇到了以下问题:
'ascii' codec can't encode characters in position xx-xx: ordinal not in range(128)
解决方案
一开始以为是返回的数据有问题,后来一步步排查发现是自己构建 URL 的时候参数出现了问题,URL 中如果要出现中文,需要对中文进行转码:
Python:
urllib.parse.quote(value)
Java:
java.net.URLEncoder.encode("value",“utf-8")