您如何使用相同的密钥发送具有倍数值的请求?
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的缺点吗?
答案 0 :(得分:4)
事实证明requests
发送POST数据没有问题。 http://httpbin.org端的问题导致表单数据被展平,并且可以忽略具有相同键的多个值。
答案 1 :(得分:3)
尝试Werkzeug MultiDict
。它与Flask应用程序中用于此目的的结构相同。
import requests
from werkzeug.datastructures import MultiDict
data = MultiDict([('1', '2'), ('1', '3')])
r = requests.post('http://www.httpbin.org/post', data=data)
print(r.content)
结果:
...
"form": {
"1": [
"2",
"3"
]
},
...