FastAPI-APIRouter

介绍

一般用 FastAPI 实例作为主路由, 而用 APIRouter 实例组织多个路由集合, 并通过 include_router() 方法添加到主路由中.

示例

创建应用实例:

1
2
3
4
5
6
7
8
# main.py
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def read_root():
return {"Hello": "World"}

在另一个文件创建一个路由集合:

1
2
3
4
5
6
7
8
# routers/users.py
from fastapi import APIRouter

router = APIRouter()

@router.get("/users/")
async def read_users():
return [{"username": "user1"}, {"username": "user2"}]

将这个路由集合添加到主应用:

1
2
3
4
5
6
from fastapi import FastAPI
from routers import users

app = FastAPI()

app.include_router(users.router)

技巧积累

添加 prefix 和 tag

如:

1
2
3
4
5
router = APIRouter(prefix="/task", tags=["TaskManage"])

@router.get("/users/")
async def read_users():
return [{"username": "user1"}, {"username": "user2"}]

此时可处理来自 /task/users/ 的请求.

tags 会显示在 docs 调试页面中:


FastAPI-APIRouter
http://example.com/2024/09/03/FastAPI-APIRouter/
作者
Jie
发布于
2024年9月3日
许可协议