【发布时间】:2020-07-13 20:05:12
【问题描述】:
我有一个 curl 命令,我可以在本地机器上运行它,但将它转移到 python 脚本给我带来了困难。这是有效的 curl 命令:
curl -X PATCH "http://localhost:9999/pins/1" -H "Content-Type: application/json" -d "{"state": "on"}"
这就是我到目前为止的 python 请求:
import requests
url = 'http://localhost:9999/pins/1'
payload = {'state':'on'}
head = {'Content-Type':'application/json'}
r = requests.patch(url, payload, headers=head)
但我收到了 400 响应。有什么方向吗?
另外,如果我将其格式化为
r = requests.patch(url, data=payload)
我收到 500 响应代码。还应该注意:我可以通过运行类似的东西轻松运行简单的获取请求
r = requests.get(url)
【问题讨论】:
-
把这个
r = requests.patch(url, data=payload)改成r = requests.patch(url, json=payload) -
^ 成功了,非常感谢!
-
我已经发布了一个答案,以便任何登陆的人都会看到答案而不是 cmets
标签: python curl python-requests