2011-12-06 7 views
4

동일한 키를 사용하여 배수 값으로 요청을 보내려면 어떻게해야할까요? 요청 라이브러리가있는 동일한 키에 대해 여러 값으로 POST 요청 보내기

r = requests.post('http://www.httpbin.org/post', data={1: [2, 3]}) 
print r.content 

 
{ 
    ... 
    "form": { 
    "1": "3" 
    }, 
    ... 
} 

편집 :

흠, 아주 이상한. 간단한 플라스크 응용 프로그램을 사용하여 게시물 데이터를 반향시키고 시도했습니다.

[('1', u'2'), ('1', u'3')] 

이것은 단지 httpbin.org의 단점입니까?

답변

4

그것은 requests가 문제없이 POST 데이터를 전송 한 것으로 밝혀졌습니다. http://httpbin.org 끝 부분에서 양식 데이터가 병합되고 동일한 키가있는 여러 값이 무시되는 문제가있었습니다.

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