2015-11-05 109 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) 
相关问题