【发布时间】:2017-02-08 18:43:38
【问题描述】:
文档似乎表明我可以将 'data=' 作为字典传递,但除非我使用 json.dumps(),否则我会收到错误消息
options = {
"deviceId":["4d51de64-2235-a465-3aee-5ec495b5b250"],
"serviceName":"software_manager",
"serviceVersion":"1.0",
"actionName":"Dump Log Files" }
res = requests.post( req, data=json.dumps(options), auth=cred)
如果我尝试将选项作为字典传递,它会失败。
res = requests.post( req, data=options, auth=cred)
data=json.dumps(options) # This works
data=options # this fails
为什么?我在文档中遗漏了什么吗?
【问题讨论】:
-
失败如何?显示错误。
-
你应该使用
res = requests.post( req, json=options, auth=cred)。 -
您需要通过 POST 检查目的地所期望的媒体类型。它可能会失败,因为目的地只接受 json。
-
谢谢! json= 有效,data= 无效。
-
错误只是 status_code = 400
标签: python json python-requests