File 用于定义客户端的上传文件。
"说明"
因为上传文件以「表单数据」形式发送。
所以接收上传文件,要预先安装 python-multipart。
例如: pip install python-multipart。
导入 File¶从 fastapi 导入 File 和 UploadFile:
from fastapi import FastAPI, File, UploadFileapp = FastAPI()@app.post("/files/")async def create_file(file: bytes = File()):return {"file_size": len(file)}@app.post("/uploadfile/")async def create_upload_file(file: UploadFile):return {"filename": file.filename}定义 File 参数¶创建文件(File)参数的方式与 Body 和 Form 一样:
from fastapi import FastAPI, File, UploadFileapp = FastAPI()@app.post("/files/")async def create_file(file: bytes = File()):return {"file_size": len(file)}@app.post("/uploadfile/")async def create_upload_file(file: UploadFile):return {"filename": file.filename}"说明"
File 是直接继承自 Form 的类。
注意,从 fastapi 导入的 Query、Path、File 等项,实际上是返回特定类的函数。
"提示"