FastAPI 请求参数及校验
query
alias #别名参数
title #标题
description #描述,会在借口文档有表述
特定的校验
min_lengthmax_lengthregex数值校验:
gt:大于(greater than)
ge:大于等于(greater than or equal)
lt:小于(less than)
le:小于等于(less than or equal)
注意:对于必需参数,我们没有顺序要求, 有默认值的参数必须放在没有默认值的后面
# coding: utf8
from fastapi import FastAPI
from typing import Optional
app = FastAPI()
# 请求参数, 有默认值
@app.get('/read1/')
async def read1(start: int = 1, end: int = 10):
return {'start': start, 'end': end }
# 请求参数, 必填, 必须是 int 类型
@app.get('/read2/')
async def read2(start: int, end: int):
return {'start': start, 'end': end }
# 请求参数, start 有默认值, end 可选(必须是 int 类型)
@app.get('/read3/')
async def read3(start: int = 0, end: Optional[int] = None):
if end:
return {'start': start, 'end': end }
return {'start': start }
# 请求参数, start 必填, end 可选(必须是 int 类型)
@app.get('/read4/')
async def read4(start: int, end: Optional[int] = None):
if end:
return {'start': start, 'end': end }
return {'start': start }校验长度,正则校验,默认值
传递多值 (批量查询很有用)
Last updated