[FastAPI-15]Body接收请求体数据

from fastapi import FastAPI, Body
from pydantic import BaseModel

app = FastAPI()

'''
使用Body接收请求体数据
{
  "user": {
    "username": "Tom",
    "password": "123465789"
  },
  "item": {
    "name": "book",
    "description": "python",
    "price": 42.0,
    "tax": 3.2
  },
  "importance":5
}
'''


class User(BaseModel):
    username: str
    password: str


class Item(BaseModel):
    name: str
    description: str
    price: float
    tax: float


@app.post("/login")
def login(user: User, item: Item, importance: int = Body()):
    return {"user": user,
            "item": item,
            "importance": importance
            }

'''
# 通过 Body(embed=True) 获取嵌套请求体 
{
  "item": {
    "name": "book",
    "description": "python",
    "price": 42.0,
    "tax": 3.2
  }
}
'''

@app.post("/items")
def items(item : Item = Body(embed=True)):
    return item

posted @   LeoShi2020  阅读(362)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2020-03-24 [Oracle]SQLPLUS清除屏幕
2020-03-24 [H3C]命令查看序列号
2020-03-24 [Oracle]数据类型转换
点击右上角即可分享
微信分享提示