我正在尝试制作一个' put' curl的方法一切正常,我得到了JSON:
curl -X PUT -d '[{"foo":"more_foo"}]' http://ip:6001/whatever?api_key=whatever
但出于某种原因使用python requests
模块如下:
import requests
url = 'http://ip:6001/whatever?api_key=whatever'
a = requests.put(url, data={"foo":"more_foo"})
print(a.text)
print(a.status_code)
我收到以下错误:
500内部服务器错误
内部服务器错误
服务器遇到内部错误,无法完成您的请求。服务器过载或应用程序出错。
NB:服务器已启动并正在运行。
答案 0 :(得分:5)
应该转储数据:
a = requests.put(url, data=json.dumps([{"foo":"more_foo"}]))
或者您可以使用json
密钥代替data
:
a = requests.post(url, json=[{"foo":"more_foo"}])