在FastAPI中,可以通过使用Pydantic库来实现输入验证和输出编码。
输入验证可以通过在请求处理函数的参数中使用Pydantic模型来实现,例如:
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class Item(BaseModel):
name: str
price: float
@app.post("/items/")
async def create_item(item: Item):
return {"name": item.name, "price": item.price}
输出编码可以通过在响应处理函数中使用Pydantic模型来实现,例如:
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class Item(BaseModel):
name: str
price: float
@app.post("/items/", response_model=Item)
async def create_item(item: Item):
return item
在以上示例中,Item
类定义了输入数据和输出数据的模型,通过将其作为参数和返回值类型来实现输入验证和输出编码。 FastAPI会自动处理数据验证和转换,并返回符合模型定义的数据。