Heim >Backend-Entwicklung >Python-Tutorial >Warum funktioniert das Hochladen meiner Python-Anforderungsdatei nicht?

Warum funktioniert das Hochladen meiner Python-Anforderungsdatei nicht?

Susan Sarandon
Susan SarandonOriginal
2024-11-30 18:56:14944Durchsuche

Why Isn't My Python Requests File Upload Working?

So laden Sie Dateien mit Python-Anfragen hoch: Beheben des Problems „Datei nicht empfangen“

Problem:

Beim Hochladen einer Datei mithilfe der Anforderungsbibliothek von Python kann der Server die Datei nicht empfangen, was zu einer leeren Datei führt Antwort.

Analyse:

Der zum Hochladen einer Datei bereitgestellte Code scheint korrekt zu sein, es besteht jedoch eine Diskrepanz mit dem Schlüsselwort „upload_file“:

files = {'files': open('file.txt','rb')}
values = {'upload_file' : 'file.txt' , 'DB':'photcat' , 'OUT':'csv' , 'SHORT':'short'}

In diesem Code ist das Wörterbuch „Dateien“ falsch benannt. Stattdessen sollte es „upload_file“ lauten.

Lösung:

Um das Problem zu beheben, ersetzen Sie das Wörterbuch „files“ durch „upload_file“:

files = {'upload_file': open('file.txt','rb')}
values = {'DB':'photcat' , 'OUT':'csv' , 'SHORT':'short'}

Dadurch wird sichergestellt, dass die Datei wie erwartet mit dem Parameter „upload_file“ hochgeladen wird Server.

Zusätzliche Informationen:

  • Wenn „upload_file“ die Datei selbst sein soll, entfernen Sie den Parameter „values“, wie es bei den Dateidaten der Fall ist jetzt im Parameter „files“ enthalten.
  • Wenn der gesamte POST-Body aus einer Datei übernommen werden soll, verwenden Sie den Parameter „files“ nicht. Veröffentlichen Sie die Datei stattdessen direkt als Daten und legen Sie bei Bedarf einen Content-Type-Header fest.

Das obige ist der detaillierte Inhalt vonWarum funktioniert das Hochladen meiner Python-Anforderungsdatei nicht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn