跳转至

应用核心 API

app

Faster APP 应用实例模块

create_app()

创建 FastAPI 应用实例

源代码位于: faster_app/app.py
def create_app() -> FastAPI:
    """创建 FastAPI 应用实例"""
    app = FastAPI(
        title=configs.PROJECT_NAME,
        version=configs.VERSION,
        debug=configs.DEBUG,
        lifespan=lifespan,
        docs_url=None,
        redoc_url=None,
    )

    # 添加静态文件服务器
    try:
        app.mount(
            "/static", StaticFiles(directory=f"{BASE_DIR}/statics"), name="static"
        )
    except Exception as e:
        logger.error(f"静态文件服务器启动失败: {e}")

    # 添加中间件
    middlewares = MiddlewareDiscover().discover()
    for middleware in middlewares:
        app.add_middleware(middleware["class"], **middleware["kwargs"])
        logger.info(f"Loaded middleware: {middleware['class'].__name__}")

    # 添加路由
    routes = RoutesDiscover().discover()
    for route in routes:
        app.include_router(route)

    return app

get_app()

获取应用实例(单例模式)

源代码位于: faster_app/app.py
def get_app() -> FastAPI:
    """获取应用实例(单例模式)"""
    if not hasattr(get_app, "_app"):
        get_app._app = create_app()
    return get_app._app

options: show_root_heading: true heading_level: 2