使用请求库发送具有相同键的多个值的 POST 请求
您将如何发送具有相同密钥的多个值的请求?
r = requests.post('http://www.httpbin.org/post', data={1: [2, 3]})
print r.content
{ ... "form": { "1": "3" }, ... }
编辑:
嗯,很奇怪。我尝试使用一个简单的 Flask 应用程序回显发布数据,我得到:
[('1', u'2'), ('1', u'3')]
这只是 httpbin.org 的一个缺点吗?
How would you go about sending a request with multiples values with the same key?
r = requests.post('http://www.httpbin.org/post', data={1: [2, 3]})
print r.content
{ ... "form": { "1": "3" }, ... }
Edit:
Hmm, very odd. I tried echoing the post data using a simple Flask application and I'm getting:
[('1', u'2'), ('1', u'3')]
Is this just a shortcoming of httpbin.org?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试 Werkzeug
MultiDict
。它与 Flask 应用程序中用于此目的的结构相同。结果:
Try the Werkzeug
MultiDict
. It's the same structure used for this purpose in Flask applications.Result:
事实证明,
requests
发送 POST 数据没有任何问题。这是 http://httpbin.org 端的一个问题,导致表单数据扁平化,并且多个值相同的键被忽略。It turns out that
requests
was sending the POST data without a problem. It was an issue on the http://httpbin.org end that was causing form data to be flattened, and multiple values with the same key to be ignored.