You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.5 KiB

Request Forms and Files

Puedes definir archivos y campos de formulario al mismo tiempo usando File y Form.

/// info | Información

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

Asegúrate de crear un entorno virtual{.internal-link target=_blank}, actívalo y luego instálalo, por ejemplo:

$ pip install python-multipart

///

Importar File y Form

{* ../../docs_src/request_forms_and_files/tutorial001_an_py39.py hl[3] *}

Definir parámetros File y Form

Crea parámetros de archivo y formulario de la misma manera que lo harías para Body o Query:

{* ../../docs_src/request_forms_and_files/tutorial001_an_py39.py hl[10:12] *}

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 como bytes y algunos como UploadFile.

/// warning | Advertencia

Puedes declarar múltiples parámetros File y Form en una path operation, pero no puedes también declarar campos Body que esperas recibir como JSON, ya que el request tendrá el body codificado usando multipart/form-data en lugar de application/json.

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

///

Resumen

Usa File y Form juntos cuando necesites recibir datos y archivos en el mismo request.