Movatterモバイル変換


[0]ホーム

URL:


Saltar a contenido
Join theFastAPI Cloud waiting list 🚀
Follow@fastapi onX (Twitter) to stay updated
FollowFastAPI onLinkedIn to stay updated
Subscribe to theFastAPI and friends newsletter 🎉
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor
sponsor

Formularios y archivos del request

🌐 Traducción por IA y humanos

Esta traducción fue hecha por IA guiada por humanos. 🤝

Podría tener errores al interpretar el significado original, o sonar poco natural, etc. 🤖

Puedes mejorar esta traducciónayudándonos a guiar mejor al LLM de IA.

Versión en inglés

Puedes definir archivos y campos de formulario al mismo tiempo usandoFile yForm.

Información

Para recibir archivos subidos y/o form data, primero instalapython-multipart.

Asegúrate de crear unentorno virtual, actívalo y luego instálalo, por ejemplo:

$pipinstallpython-multipart

ImportaFile yForm

fromtypingimportAnnotatedfromfastapiimportFastAPI,File,Form,UploadFileapp=FastAPI()@app.post("/files/")asyncdefcreate_file(file:Annotated[bytes,File()],fileb:Annotated[UploadFile,File()],token:Annotated[str,Form()],):return{"file_size":len(file),"token":token,"fileb_content_type":fileb.content_type,}
🤓 Other versions and variants

Tip

Prefer to use theAnnotated version if possible.

fromfastapiimportFastAPI,File,Form,UploadFileapp=FastAPI()@app.post("/files/")asyncdefcreate_file(file:bytes=File(),fileb:UploadFile=File(),token:str=Form()):return{"file_size":len(file),"token":token,"fileb_content_type":fileb.content_type,}

Define parámetrosFile yForm

Crea parámetros de archivo y formulario de la misma manera que lo harías paraBody oQuery:

fromtypingimportAnnotatedfromfastapiimportFastAPI,File,Form,UploadFileapp=FastAPI()@app.post("/files/")asyncdefcreate_file(file:Annotated[bytes,File()],fileb:Annotated[UploadFile,File()],token:Annotated[str,Form()],):return{"file_size":len(file),"token":token,"fileb_content_type":fileb.content_type,}
🤓 Other versions and variants

Tip

Prefer to use theAnnotated version if possible.

fromfastapiimportFastAPI,File,Form,UploadFileapp=FastAPI()@app.post("/files/")asyncdefcreate_file(file:bytes=File(),fileb:UploadFile=File(),token:str=Form()):return{"file_size":len(file),"token":token,"fileb_content_type":fileb.content_type,}

Los archivos y campos de formulario se subirán como form data y recibirás los archivos y campos de formulario.

Y puedes declarar algunos de los archivos comobytes y algunos comoUploadFile.

Advertencia

Puedes declarar múltiples parámetrosFile yForm en unapath operation, pero no puedes también declarar camposBody que esperas recibir como JSON, ya que el request tendrá el body codificado usandomultipart/form-data en lugar deapplication/json.

Esto no es una limitación deFastAPI, es parte del protocolo HTTP.

Resumen

UsaFile yForm juntos cuando necesites recibir datos y archivos en el mismo request.


[8]ページ先頭

©2009-2026 Movatter.jp