Files
MoviePilot/app/startup/routers_initializer.py
T

24 lines
836 B
Python

from fastapi import FastAPI
def init_routers(app: FastAPI, api_prefix: str = "/api/v1"):
"""
初始化路由
:param app: 需要挂载路由的 FastAPI 应用
:param api_prefix: v1 API 根路径,由启动组合根传入
"""
from app.api.router_specs import API_V1_ROUTER_SPECS
from app.api.servarr import arr_router
from app.api.servcookie import cookie_router
# 直接聚合端点路由,避免先构建兼容路由器再克隆到最终应用。
for spec in API_V1_ROUTER_SPECS:
app.include_router(
spec.router,
prefix=f"{api_prefix}{spec.prefix}",
tags=list(spec.tags),
)
# Radarr、Sonarr路由
app.include_router(arr_router, prefix="/api/v3")
# CookieCloud路由
app.include_router(cookie_router, prefix="/cookiecloud")