Published

请求表单与文件

FastAPI framework, high performance, easy to learn, fast to code, ready for production We just scratched the surface, but you already get the idea of how it all works...

请求表单与文件

FastAPI 支持同时使用 FileForm 定义文件和表单字段。

!!! info "说明"

接收上传文件或表单数据,要预先安装 python-multipart

例如,pip install python-multipart

导入 FileForm

{!../../../docs_src/request_forms_and_files/tutorial001.py!}

定义 FileForm 参数

创建文件和表单参数的方式与 BodyQuery 一样:

{!../../../docs_src/request_forms_and_files/tutorial001.py!}

文件和表单字段作为表单数据上传与接收。

声明文件可以使用 bytesUploadFile

!!! warning "警告"

可在一个路径操作中声明多个 FileForm 参数,但不能同时声明要接收 JSON 的 Body 字段。因为此时请求体的编码为 multipart/form-data,不是 application/json

这不是 FastAPI 的问题,而是 HTTP 协议的规定。

小结

在同一个请求中接收数据和文件时,应同时使用 FileForm