# -*- coding: utf-8 -*- """FastAPI 服务入口(uvicorn)。 开发期启动: .venv/Scripts/python.exe web/main.py 生产切换前需先将状态/任务模型与既有 Flask 进程统一(见迁移计划阶段 C)。 """ import os import sys import uvicorn # 直接以 `python web/main.py` 运行时,sys.path[0] 是 web/ 而非项目根—— # 补上项目根,保证 `import core` / `import music_api` / `import web.app` 可用。 sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) from web.app import create_app # 生产可在联调期临时打开 Flask 兜底(未迁移路由回落到遗留应用) app = create_app(serve_flask_fallback=os.environ.get('FASTAPI_FLASK_FALLBACK') == '1') if __name__ == '__main__': uvicorn.run(app, host='0.0.0.0', port=5000, log_level='info')