1> 定义
当函数声明中的参数没有在路径中声明时,系统默认为查询参数
查询参数在url的? 之后, 以& 为分隔符形成键值对
例: http://127.0.0.1:8000/demo?skip=4&limit=10
如 函数声明中有默认值 在url中可以不声明直接访问,即上图中也可通过如下url直接访问
http://127.0.0.1:8000/demo
2>可选参数
如未设定默认值,即为必要参数
3>参数类型转换
url中short 值设置为1,on,true,True,yes,皆可, False 设置成相反值
4> 多个查询参数与路径参数,
Fastapi可自动识别查询参数与路径参数
上图中,user_id & item_id 为路径参数 q & short 为查询参数
5> 字符串校验
FastApi允许对参数额外的校验
上图中使用Query作为默认值,设置参数字符串最大长度为50,实现对参数的额外校验,description为可选参数,所以Query的第一个参数为None,
如Query仅设置参数第一个 为None效果等同于description: Optional[str]=None,意为可选参数
如为必要参数 可将Query的第一个参数设置为 ...
6> 查询参数为列表
即url为 http://localhost:8000/items/?q=foo&q=bar
如设置默认参数为列表,将Query(None) 改为Query(["aaa","BBB"])