- FastAPI教程
- FastAPI - 主页
- FastAPI - 简介
- FastAPI - 你好世界
- FastAPI-开放API
- FastAPI - Uvicorn
- FastAPI - 类型提示
- FastAPI - IDE 支持
- FastAPI - 休息架构
- FastAPI - 路径参数
- FastAPI - 查询参数
- FastAPI - 参数验证
- FastAPI - Pydantic
- FastAPI - 请求正文
- FastAPI - 模板
- FastAPI - 静态文件
- FastAPI - HTML 表单模板
- FastAPI - 访问表单数据
- FastAPI - 上传文件
- FastAPI - Cookie 参数
- FastAPI - 标头参数
- FastAPI - 响应模型
- FastAPI - 嵌套模型
- FastAPI - 依赖关系
- FastAPI - CORS
- FastAPI - Crud 操作
- FastAPI - SQL 数据库
- FastAPI - 使用 MongoDB
- FastAPI - 使用 GraphQL
- FastAPI - Websocket
- FastAPI - FastAPI 事件处理程序
- FastAPI - 安装子应用程序
- FastAPI - 中间件
- FastAPI - 安装 Flask 应用程序
- FastAPI - 部署
- FastAPI 有用资源
- FastAPI - 快速指南
- FastAPI - 有用的资源
- FastAPI - 讨论
FastAPI - 查询参数
将请求数据传递到服务器的经典方法是将查询字符串附加到 URL。假设服务器上的 Python 脚本 (hello.py) 作为CGI执行,由与号 (&) 连接的键值对列表形成查询字符串,通过添加问号 (? ) 作为分隔符。例如 -
http://localhost/cgi-bin/hello.py?name=Ravi&age=20
URL 的尾部(?)之后是查询字符串,然后由服务器端脚本解析以进行进一步处理。
如前所述,查询字符串是由 & 符号连接的参数=值对的列表。FastAPI 自动将端点中非路径参数的部分视为查询字符串,并将其解析为参数及其值。这些参数被传递给操作装饰器下面的函数。
例子
from fastapi import FastAPI app = FastAPI() @app.get("/hello") async def hello(name:str,age:int): return {"name": name, "age":age}
启动 Uvicorn 服务器并在浏览器中启动此 URL -
http://localhost:8000/hello?name=Ravi&age=20
您应该得到相同的 JSON 响应。但是,检查告诉您 FastAPI 已检测到 /hello 端点没有路径参数,但有查询参数。
单击“尝试”按钮,输入“Ravi”和“20”作为值,然后按“执行”按钮。文档页面现在显示 Curl 命令、请求 URL 以及 HTTP 响应的正文和标头。
例子
您可以使用Python的类型提示来修饰要修饰的函数的参数。在本例中,将 name 定义为 str,将age 定义为 int。
from fastapi import FastAPI app = FastAPI() @app.get("/hello/{name}") async def hello(name:str,age:int): return {"name": name, "age":age}
尝试输入 http://localhost:8000/docs 作为 URL。这将打开 Swagger UI (OpenAPI) 文档。参数“name”是路径参数,“age”是查询参数