2014-11-01 11 views
13

Jaka jest różnica między danymi i parametrami json w pythonie Pakiet zapytań?Różnica między danymi i parametrami json w pakiecie zapytań Pythona

Nie jest jasne od the documentation

Czy ten kod:

import requests 
import json 
d = {'a': 1} 
response = requests.get(url, data=json.dumps(d)) 

Czy coś innego niż:

import requests 
import json 
d = {'a': 1} 
response = requests.get(url, json=d) 

Jeśli tak, to jakie? Czy ten ostatni automatycznie ustawił content-type w nagłówku na application/json?

Odpowiedz

9

Aby odpowiedzieć na moje własne pytanie, wydaje się moje dwa przykłady powyżej zrobić to samo i że za pomocą parametru json rzeczywiście ma ustawić content-type w nagłówkach do application/json. W moim pierwszym przykładzie powyżej, używając parametru data, content-type w nagłówkach należy ustawić ręcznie.

+1

Zachowuje się tak, jak powinien zachowywać się interfejs API. Możesz to sprawdzić tutaj: https://github.com/kennethreitz/requests/blob/master/requests/models.py#L422. – wenzul

+0

Zgoda, po prostu nie została udokumentowana w żadnym miejscu bez czytania kodu. – user1507844

Powiązane problemy