推荐答案
// www.javascriptcn.com code example
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"message": "Hello, World"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "q": q}本题详细解读
FastAPI 应用的基本结构
导入 FastAPI:
- 首先需要导入
FastAPI类,这是创建 FastAPI 应用的基础。
from fastapi import FastAPI
- 首先需要导入
创建 FastAPI 实例:
- 通过实例化
FastAPI类来创建一个应用实例。这个实例将用于定义路由和处理请求。
app = FastAPI()
- 通过实例化
定义路由:
- 使用
@app.get()装饰器来定义 HTTP GET 请求的路由。路由路径可以是根路径/或其他路径,如/items/{item_id}。
@app.get("/") def read_root(): return {"message": "Hello, World"}- 使用
路径参数和查询参数:
- 在路由中可以使用路径参数(如
item_id)和查询参数(如q)。路径参数是 URL 的一部分,而查询参数是 URL 中?后面的部分。
@app.get("/items/{item_id}") def read_item(item_id: int, q: str = None): return {"item_id": item_id, "q": q}- 在路由中可以使用路径参数(如
返回响应:
- 路由处理函数可以返回一个字典,FastAPI 会自动将其转换为 JSON 格式的响应。
return {"item_id": item_id, "q": q}
运行 FastAPI 应用
使用
uvicorn来运行 FastAPI 应用。假设你的文件名为main.py,可以通过以下命令启动应用:uvicorn main:app --reload
--reload参数用于开发时自动重新加载应用,当你修改代码后,应用会自动重启。
总结
FastAPI 应用的基本结构包括导入 FastAPI 类、创建应用实例、定义路由和处理函数,以及返回 JSON 响应。通过这种方式,你可以快速构建一个 RESTful API。