我通过 python 中的 post 请求在参数中发送字典。 问题是我的密钥之一在阿拉伯语中具有价值。接收者说他们正在以该密钥接收数据作为
"\u062c\u0648\u062c\u0644"
,我猜这是 utf-8 编码形式。
我只想用阿拉伯语发送我的数据。接收方无能为力。所以代码必须在我这边完成。
我发送的数据。
{'Data': {'SickLeaveDate': '1444-10-07', 'PatientEmployeer': 'جوجل', 'PatientJob': 'تطوير البرمجيات'}}
他们收到的数据。
{"Data": {"SickLeaveDate": "1444-10-07", "PatientEmployeer": "\u062c\u0648\u062c\u0644", "PatientJob": "\u062a\u0637\u0648\u064a\u0631 \u0627\u0644\u0628\u0631\u0645\u062c\u064a\u0627\u062a"}}
headers = {
'accept': 'application/json',
'apikey': XXXXXXXXX
}
requests.post(url, headers=headers, json=dict)
这是一个有效的 JSON 字符串。接收方需要解码 JSON。它不是“utf-8 编码形式”。它是 Unicode 代码点的转义码,在这种情况下代表您的阿拉伯字符。
>>> import json
>>> s = '''{"Data": {"SickLeaveDate": "1444-10-07", "PatientEmployeer": "\u062c\u0648\u062c\u0644", "PatientJob": "\u062a\u0637\u0648\u064a\u0631 \u0627\u0644\u0628\u0631\u0645\u062c\u064a\u0627\u062a"}}'''
>>> json.loads(s)
{'Data': {'SickLeaveDate': '1444-10-07', 'PatientEmployeer': 'جوجل', 'PatientJob': 'تطوير البرمجيات'}}