如何在 fastapi 中以字典的形式打印 post 请求的表单数据
问题:
如何在 fastapi 中以字典的形式打印 post 请求的表单数据?
回答:
以下是如何使用 fastapi 以字典的形式打印 post 请求的表单数据的两种方法:
方法 1:使用双星参数
from fastapi import fastapi, form from loguru import logger import uvicorn app = 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, Request from loguru import logger import uvicorn app = 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 )
这两种方法的输出都是一个字典形式的表单数据。