Я пытаюсь выполнить запрос POST, включая загрузку локального файла с помощью python.
Я посмотрел много подобных запросов здесь, но ни один не работал для меня, или ни один не был достаточно конкретным, чтобы помочь мне.
С Почтальоном все работает как положено и без всяких проблем.
Но, представляя то же самое с питоном, я не могу этого достичь.
Я безуспешно пробовал различные комбинации словарей params, body и file
Вот как выглядит тело запроса рабочего почтальона:
Вот как были настроены параметры этого запроса почтальона:
Это мой код Python
metadata = {
"name":"MyFile" ,
"type":"myFileType" ,
"parentId":"1cc58622-3bc0-4fc4-a222-a64bd8d90af1"
}
fileForUpload = {'upload_file': open("/home/myuser/blablabla/testfile.jpg)", "rb")}
params = {"metadata":json.dumps(metadata), "file": "filename"}
headers = {
"content-type": "application/json",
"Authorization": 'Bearer ' + token,
"accept-encoding": "gzip, deflate"
}
response = requests.post(url, headers = headers, params = params, files = fileForUpload)
Я получаю сообщение об ошибке конечной точки API, утверждая, что отсутствует параметр файла ...
Есть идеи, что я делаю не так?