FastAPI中如何以字典形式获取POST请求的表单数据?
如何在 fastapi 中以字典的形式打印 post 请求的表单数据
问题:
如何在 fastapi 中以字典的形式打印 post 请求的表单数据?
回答:
以下是如何使用 fastapi 以字典的形式打印 post 请求的表单数据的两种方法:
方法 1:使用双星参数
from fastapi import fastapi, formfrom loguru import loggerimport uvicornapp = fastapi()@app.post("/search")def search_reverse(**kwargs: int): logger.debug(kwargs)if __name__ == "__main__": uvicorn.run( app="api:app", host="127.0.0.1", port=9950, workers=1, reload=true )
方法 2:使用 request.form() 方法
from fastapi import FastAPI, Form, Depends, Requestfrom loguru import loggerimport uvicornapp = FastAPI()async def get_form(request: Request): form_data = await request.form() return dict(form_data)@app.post("/search")def search_reverse(form_data: dict = Depends(get_form)): logger.debug(form_data)if __name__ == "__main__": uvicorn.run( app="api:app", host="127.0.0.1", port=9950, workers=1, reload=True )
这两种方法的输出都是一个字典形式的表单数据。