在 FastAPI 中,你可以使用表单数据处理 POST 请求中的数据。FastAPI 提供了 Form 类来处理表单数据,并将其作为函数的参数。

以下是一个简单的示例,演示如何使用表单数据:
from fastapi import FastAPI, Form

app = FastAPI()

# 使用 Form 类来处理表单数据
@app.post("/login/")
def login(username: str = Form(...), password: str = Form(...)):
    return {"username": username, "password": password}

在这个例子中,Form 类用于声明表单字段,并将其作为函数的参数。... 表示这是一个必填字段,你也可以提供默认值或其他参数来定义更多的表单字段属性。

你可以使用这种方式处理表单数据,而无需手动解析请求体或使用 JSON 模型。FastAPI 会自动解析表单数据,并将其传递给相应的函数。

你还可以通过设置 multipart/form-data 来处理文件上传。以下是一个处理文件上传的示例:
from fastapi import FastAPI, File, UploadFile

app = FastAPI()

# 使用 UploadFile 类来处理文件上传
@app.post("/uploadfile/")
async def create_upload_file(file: UploadFile = File(...)):
    return {"filename": file.filename}

在这个例子中,UploadFile 类用于处理文件上传。你可以在请求中使用 multipart/form-data 格式来上传文件,FastAPI 将自动解析文件并传递给相应的函数。

需要注意的是,对于文件上传,File 类用于处理非文件字段,而 UploadFile 类用于处理文件字段。

这些示例展示了如何使用 FastAPI 处理表单数据,使得在创建 Web 应用时能够轻松处理用户提交的数据。


转载请注明出处:http://www.zyzy.cn/article/detail/13934/FastAPI