Senden Sie Dateien in der HTTP -Postanforderung mit ihren JSON -Daten [Duplikat]Python

Python-Programme
Guest
 Senden Sie Dateien in der HTTP -Postanforderung mit ihren JSON -Daten [Duplikat]

Post by Guest »

Ich versuche, die HTTP -Anfrage an meinen Python Fastapi -Dienst mit Anforderungsdetails unten zu senden. < /p>
curl -X 'POST' \
'http://localhost:8081/file/upload' \
-H 'accept: application/json' \
-H 'Content-Type: multipart/form-data' \
-F 'files=@87869be4-07af-4089-b695-108593d6c027 (1).pdf;type=application/pdf' \
-F 'files=@Holiday Schedule IN - 2025 1 (1).pdf;type=application/pdf' \
-F 'files=@uploads_1234.pdf;type=application/pdf' \
-F 'metadatas=,,{1, 2, 3, 4}'
< /code>
Unten finden Sie Screenshot von der Swagger -Seite. Senden Sie alle Metadaten für die ersten beiden Dateien, dann muss ich sie auch mit Nullwerten einbeziehen. Im Befehl curl können Sie sehen, dass in Metadatas zwei Nullwerte vor {1, 2, 3, 4} sind. Die Dateien gehen anders anstelle einer Liste. < /p>
unten ist mein Python -Router -Code.@router.post("/upload")
async def upload_files(
files: List[UploadFile] = File(...),
metadata_list: List[Optional[str]] = Form(None)
) -> dict:
< /code>
Aber ich möchte die Liste eines Objekts in meinem Router, damit jedes Objekt eine Datei und seine optionalen Metadaten enthält. Und von der Swagger -Seite möchte ich auch, wenn jemand auf Element klicken, dann werden zwei Felder an erster Stelle stehen, um die Datei auszuwählen, und zweitens enthält seine Meta -Daten, die null sind, wenn sie nicht angegeben sind. Nicht zwei unabhängige Listen für Dateien und Metadaten wie in meinem Screenshot. Bitte geben Sie auch Code und Erläuterung an, wie er erreicht werden kann.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post