【发布时间】:2018-06-04 05:38:30
【问题描述】:
我正在尝试使用 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 内部服务器错误
内部服务器错误
服务器遇到内部错误,无法完成您的请求。要么是服务器超载,要么是应用程序出错。
注意:服务器已启动并正在运行。
【问题讨论】:
-
您的示例之间的数据结构不同。另请注意,您可以在
requests中以不同方式传递 URL 查询参数,而不是在 URL 字符串中:docs.python-requests.org/en/master/user/quickstart/…。 -
是的,我知道数据结构,但是如果我把它们放在 curl 中的确切位置,请求就会失败。感谢您提供查询参数,但我假设即使我通过了它们,它的行为仍然会像这样。
-
你说的“失败”是什么意思?当前的也失败了,所以我认为它有所不同?给minimal reproducible example。
-
您是否尝试将数据作为 JSON 传递?
标签: python python-3.x python-2.7 http python-requests