Я реализую клиентскую библиотеку для частного HTTP-API с помощью запросов python. API (который я не контролирую) ожидает, что параметры будут в определенном порядке, но запросы python не выполняют сортировку dict как параметр.
Это то, что я пробовал:
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
Это то, чего я пытаюсь избежать:
requests.get('https://example.org?{0}'.format(urlencode(params)))