FastAPI如何打印POST请求的表单数据并将其转换为字典?

霞舞
发布: 2024-11-16 10:15:02
原创
698人浏览过

fastapi如何打印post请求的表单数据并将其转换为字典?

fastapi 打印 post 请求的 form

如何在 fastapi 中打印 post 请求的 form 并以字典的方式呈现所有表单参数?

解决方案

使用 @app.post('/search') 装饰器装饰视图函数并使用 **kwargs 接受所有表单参数。以下代码示例演示了如何实现此功能:

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
    )
登录后复制

运行此代码并发送 post 请求到 /search 路径,您将在日志中看到所有表单参数。

使用自定义函数(推荐)

您还可以创建自定义函数来从请求中提取表单数据,如下所示:

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
    )
登录后复制

这种方法允许您以更可重用的方式访问表单数据。

以上就是FastAPI如何打印POST请求的表单数据并将其转换为字典?的详细内容,更多请关注php中文网其它相关文章!

全能打印神器
全能打印神器

全能打印神器是一款非常好用的打印软件,可以在电脑、手机、平板电脑等设备上使用。支持无线打印和云打印,操作非常简单,使用起来也非常方便,有需要的小伙伴快来保存下载体验吧!

下载
相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号