请求体是客户端发送给API的数据,fastApi使用 Pydantic 模型来声明请求体
不能使用 GET操作(HTTP 方法)发送请求体。
要发送数据,必须使用下列方法之一:POST
(较常见)、PUT
、DELETE
或 PATCH
创建数据类型
from pydantic import BaseModel
class Item(BaseModel):
name: str
description: str | None = None
price: float
tax: float | None = None
和查询参数一样,当一个模型属性具有默认值时,它不是必须的,否则它是一个必须属性,如果默认值为None,那么它是可选属性
声明为参数
from fastapi import FastAPI
from pydantic import BaseModel
class Item(BaseModel):
name: str
description: str | None = None
price: float
tax: float | None = None
app = FastAPI()
@app.post("/items/")
async def create_item(item: Item):
return item
使用与声明路径和查询参数的相同方式声明请求体,即可将其添加到「路径操作」中,同时将它的类型声明为创建的Item模型