2015-11-05 20 views
3

我使用requests.api lib發送post請求。我要的是發送多維POST數據和我總是拿出短,此代碼:如何在Python中發送多維POST

import requests 

url = 'http://someurl.com'; 

request_data = {} 
request_data['someKey'] = 'someData' 
request_data['someKeytwo'] = 'someData2' 
request_data['requestData'] = {'someKey3': 'someData3'} 

login = requests.post(url, data=login_data) 

在接收端,我收到了POST用「的RequestData」 =>「someKey3」而不是「的RequestData」 => [「someKey3」=>'someData3']

如何發送正確的POST?

+0

有沒有這樣的事,作爲一個「多維POST」;請求總是線性的。你想模仿另一種特定語言/圖書館如何安排請求嗎? –

+0

也許你應該把你的整個結構作爲JSON發佈? –

+0

回答了我自己的問題。像php這樣的語言在多維數組和鍵=值對中包含$ _POST數據。我想收到類似$ _POST ['requestData'] ['someKey3']的東西,並獲得「someData3」。 – drakonli

回答

0

只需使用:

import json 
login = requests.post(rul, data=json.dumps(login_data)) 

這樣你收到關於接收端的JSON。

+0

我不需要發送json。我需要發送POST鍵=>值多維數據。 – drakonli

1

我的問題的正確答案是:

import requests 

url = 'http://someurl.com'; 

request_data = {} 
request_data['requestData[someKey3]'] = 'someData3' 

login = requests.post(url, data=request_data)