Я пытаюсь отправить массив (список) запросов в API-интерфейс WheniWork с помощью request.post, и я продолжаю получать одну из двух ошибок. Когда я отправляю список в виде списка, у меня появляется ошибка распаковки, и когда я отправляю его как строку, у меня возникает ошибка с просьбой отправить массив. Я думаю, что это имеет какое-то отношение к тому, как запросы обрабатывают списки. Вот примеры:
url='https://api.wheniwork.com/2/batch'
headers={"W-Token": "Ilovemyboss"}
data=[{'url': '/rest/shifts', 'params': {'user_id': 0,'other_stuff':'value'}, 'method':'post',{'url': '/rest/shifts', 'params': {'user_id': 1,'other_stuff':'value'}, 'method':'post'}]
r = requests.post(url, headers=headers,data=data)
print r.text
# ValueError: too many values to unpack
Просто обертывание значения для данных в кавычках:
url='https://api.wheniwork.com/2/batch'
headers={"W-Token": "Ilovemyboss"}
data="[]" #removed the data here to emphasize that the only change is the quotes
r = requests.post(url, headers=headers,data=data)
print r.text
#{"error":"Please include an array of requests to make.","code":5000}