FastAPI 教程

FastAPI 路径参数数值校验

在FastAPI中,你可以使用Pydantic来对路径参数进行数值验证。你可以使用Path函数来定义路径参数,并指定其类型和验证规则。

以下是一个使用FastAPI和Pydantic对paths参数进行数值以至于3000的示例:

纯文本
plaintext
from fastapi import FastAPI, Path
from pydantic import BaseModel, Field

app = FastAPI()

class Item(BaseModel):
    # 这里你可以定义你的数据模型
    pass

@app.get("/items/{item_id}")
async def read_item(item_id: int = Path(..., gt=0, le=3000, description="Item ID must be between 1 and 3000")):
    return {"item_id": item_id}

在这个例子中,我们定义了一个item_id参数,它必须是一个正整数数,且小于等于3000。如果用户提供的item_id不满足这些条件,FastAPI会返回一个422 Unprocessable Entity错误,并给数据的错误信息。

你可以使用Field来设置更多的验证规则,例如gt(大于)、lt(小于)、ge(大于等于)、le(小于等于)、multiple_of(整除)等。

注意,这些验证调度是在服务层进行 validated的,它们不会直接影响你的API文档或 OpenAPI Schema。

希望这个答案能幫助到你!如果还有任何 вопросы,请随意问。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注