我们可以在我们不同的请求路径的返回参数使用相应模型。接下来看一个简单的demo
from fastapi import FastAPI
from typing import Optional
from pydantic import BaseModel
class One(BaseModel):
name: str
description: Optional[str] = None
price: float
tax: Optional[float] = None
app = FastAPI()
@app.post("/items", response_model=One)
def read_items(item: One):
return item
我们可以看下,接口的正常返回

response_model是装饰器方法(get,post等的)一个参数,不像之前的所有的参数和请求体,它不属于路径操作参数。
它接收的类型与你将为Pydantic模型属性所声明的类型相同,因此它可以是一个Pydantic模型,但也可以是一个由Pydantic模型组成的list,例如List[Item].
FastAPI将使用此response_model来:
将输出的数据转换为其声明的类型。
校验数据。
在OpenApi的路径操作中为响应添加一个JSON Schema。
并在自动生成文档系统中使用</
FastAPI响应模型实践

本文介绍如何使用FastAPI中的response_model特性,通过不同模型区分请求和响应数据,确保敏感信息如密码不会被不当暴露。
最低0.47元/天 解锁文章
602

被折叠的 条评论
为什么被折叠?



