fastapi中post请求嵌套数据
背景:最近要写一个服务器的测试桩,post请求 给服务器,服务器在把请求的数据解析出来
post的请求格式为:
{ "total": 1, "rows": [ { "appkey": "abc", "msgid": 123, "regid": "xxxxxx", "channel": "app", "sub_channel": 0, "platform": "android", "itime": 57888847848, "status": 0, "err_code": 0, "reason": "", "loss_source": 1, "data_msgtype": 1 } ] }
解包实现为:
# -*- coding:utf-8 -*- #@Time : 2022/2/15 14:22 #@Author: 张君 #@File : PrivateCloud.py import uvicorn from fastapi import FastAPI from pydantic import BaseModel from typing import List, Set app = FastAPI() class Item(BaseModel): appkey: str msgid: int regid: str channel: str sub_channel:int platform: str itime: str status: int err_code: int reason: str loss_source: int data_msgtype: int class Offer(BaseModel): total: int rows: List[Item] @app.post("/offers/") async def create_offer(*, offer: Offer): return offer if __name__ == '__main__': uvicorn.run(app='main:app', host="127.0.0.1", port=8200, reload=True, debug=True)
在服务器中部署请求日志
参考文章如下:
https://www.cnblogs.com/xiao987334176/p/13099223.html
作者:做梦的人(小姐姐) 出处:https://www.cnblogs.com/chongyou/ 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。 如果文中有什么错误,欢迎指出。以免更多的人被误导。 微信号:18582559217 |