我正在尝试将一组json数据发布到服务器。我似乎丢失了一些东西,因为我遇到了以下错误:(注意:CPAPI是API的名称)
“ SerializationException-无法反序列化” application / json“ 使用CPAPI.ServiceModule.AddCustomerRequest请求” \ n错误: System.Runtime.Serialization.SerializationException:类型定义应以'{'开头,期望序列化类型>> “ AddCustomerRequest”的字符串开头为: \“ {\\” SY_WRKGRP \\“:{\\” WRKGRP_ID \\“:\\” 7 \\“},\\” AR_CUST \\“:\ r \ n
这是我的代码:
import requests, json
url = "https://shipping:52000/customer/"
payload1 = '{"SY_WRKGRP":{"WRKGRP_ID":"7"},"AR_CUST": {"CUST_NO":"6377123456","NAM":"Rob O","NAM_UPR":"ROBO","FST_NAM":"Rob","FST_NAM_UPR":"ROB","LST_NAM":"O"}}'
headers = {
"Accept": "application/json",
"Authorization": "XXXX",
"APIKey": "YYYY",
"Content-Type": "application/json"
}
r = requests.post(url, json=payload1, headers=headers,verify=False)
print()
print(r)
print(r.text)
知道我在这里缺少什么吗?
答案 0 :(得分:1)
传递给requests.post()
的{{1}}关键字的值应该是未序列化的Python值(例如json
),而不是序列化的JSON字符串。要么在dict
周围加上单引号将其变为payload1
,要么使用dict
而不是data=payload1
。