簡體   English   中英

使用請求庫發送具有相同鍵的倍數值的POST請求

[英]Sending POST request with multiples values for same key with requests library

您如何使用相同的密鑰發送具有倍數值的請求?

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的缺點嗎?

事實證明, requests發送POST數據沒有問題。 這是http://httpbin.org上的一個問題,它導致表單數據被展平,並且可以忽略具有相同鍵的多個值。

試試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"
  ]
},
...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM