fastapi 路由
第1层: 各模块定义路由
↓
第2层: v1/router.py 聚合路由
↓
第3层: main.py 注册到应用
第1层:定义路由
# app/v1/admin/users.py
from fastapi import APIRouter
router = APIRouter() # ← 创建路由器
@router.get("") # 路径是空的
async def get_users():
return {"users": [...]}
@router.post("")
async def create_user():
return {"msg": "创建成功"}
聚合路由
# app/v1/router.py
from fastapi import APIRouter
from app.v1.admin import users as admin_users
api_router = APIRouter() # ← 创建总路由器
# 注册管理后台用户路由
api_router.include_router(
admin_users.router, # ← 第1层的 router
prefix="/admin/users", # ← 添加前缀
tags=["管理后台-用户"]
)
此时路由变成:
GET /admin/users → get_users()
POST /admin/users → create_user()
第3层:注册到应用
# app/main.py
from fastapi import FastAPI
from app.v1.router import api_router
app = FastAPI()
# 注册 v1 路由
app.include_router(
api_router, # ← 第2层的 api_router
prefix="/api/v1" # ← 再添加前缀
)

浙公网安备 33010602011771号