Muszę wykonać wywołanie API, aby przesłać plik wraz z ciągiem JSON ze szczegółowymi informacjami o pliku.Żądania w pythoku: Opublikuj JSON i plik w jednym żądaniu
Próbuję użyć lib wnioski python to zrobić:
import requests
info = {
'var1' : 'this',
'var2' : 'that',
}
data = json.dumps({
'token' : auth_token,
'info' : info,
})
headers = {'Content-type': 'multipart/form-data'}
files = {'document': open('file_name.pdf', 'rb')}
r = requests.post(url, files=files, data=data, headers=headers)
To rzuca się następujący błąd:
raise ValueError("Data must not be a string.")
ValueError: Data must not be a string
jeśli usunąć 'pliki' z żądania, to działa .
Po usunięciu "danych" z żądania działa.
Jeśli nie koduję danych jako JSON, to działa.
Z tego powodu myślę, że błąd polega na wysyłaniu danych i plików JSON w tym samym żądaniu.
Jakieś pomysły, jak to działa?
wydaje się być literówka w twoim kodzie: 'var2' powinno następować po' '', prawda? –
Tak, naprawiłem mój przykład, dzięki! – oznu