Archived
feat: 支持纯 FastAPI 模式(根路径服务前端)+ 修任务端点路径
- web/app.py:create_app(api_prefix=) 参数化前缀——'' 即根路径模式, 87 条路由直接服务前端使用的路径,无需 Flask 兜底 - web/main.py:WEB_MODE=dual(默认,迁移期)/ fastapi(纯 FastAPI)切换 - 修真实路径缺陷:任务类端点漏了 /api 段(Flask 为 /api/topen 等, 原写成 /topen),根路径模式下前端会 404。已改为 /api/topen、/api/queue、 /api/batch_progress、/api/task/*;fe_error 同步修正 - 奇偶校验路径映射同步更新 验证: - tests/test_root_mode.py 新增 66 项:前端调用的每条路径在纯 FastAPI 模式下 均非 404;root 模式不再暴露 /api/v1 - 纯 FastAPI 模式真实启动(uvicorn, PORT=5002)实测: /health、/、/static 200,/song、/api/task/list 401(鉴权生效) - 全套 pytest 135/135;ruff All checks passed;pyright 0 errors;奇偶 36/36
This commit is contained in:
1 parent
cd0f1f78a3
commit
f5d1e3c3a9
5 files changed
+107
-28
No files matched your search
+1
-1
@@ -395,7 +395,7 @@ async def _get_setting(key: str, default: str = '') -> str:
|
||||
|
||||
# ============ 前端错误上报 ============
|
||||
|
||||
@router.api_route('/fe_error', methods=['POST', 'GET'])
|
||||
@router.api_route('/api/fe_error', methods=['POST', 'GET'])
|
||||
async def fe_error(request: Request):
|
||||
"""前端错误日志上报(10 次/分/IP;字段截断清洗;仅写服务日志,不入库)。"""
|
||||
if not ratelimit.rate_ok('fe:' + ratelimit.client_ip(request), 10, 60):
|
||||
|
||||
Reference in new issue
Block a user