Sto implementando una libreria client per un'API HTTP privata utilizzando python requests. L'API (che non controllo) si aspetta che i parametri siano in un certo ordine, ma le richieste python non rispettano un dettato ordinato come parametro.richieste python: ordine ottenere parametri
Questo è quello che ho provato:
import requests
from django.utils.datastructures import SortedDict
params = SortedDict()
params['s'] = 'value1'
params['f'] = 'value2'
requests.get('https://example.org/private_api', params=params)
#performs request as https://example.org/private_api?f=value1&s=value2
Questo è quello che sto cercando di evitare:
requests.get('https://example.org?{0}'.format(urlencode(params)))
Perché si usa il parametro 'data' invece di' params' quando si effettua la richiesta? –
@Piotr Dobrogost: si è trattato di un errore durante la compilazione dell'esempio. – tback
Perché questo è un problema? I parametri GET sono generalmente accessibili per nome e non per ordine. –