Skip to content

启动

后端(FastAPI):

bash
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
uvicorn main:app --reload

健康检查:

GET /health

主页静态站点:

  • GET /statics/main/ 提供(默认 statics/main/index.html)。

玩家流程(关卡)

关卡的加载顺序由 config/map.json 决定,数组索引对应等级:

  • Lv0(索引 0)默认放行:访问 /{slug}/api/{slug} 不需要 token。
  • Lv1+ 需要 token:请求 /api/{slug} 时携带 Authorization: Bearer <token>

关卡常见交互模式:

  1. 玩家访问 /{slug}(静态页,若关卡提供了 levels/<module>/static/)。
  2. 静态页调用 POST /api/{slug}/verify 提交答案。
  3. 校验成功后,关卡返回 { token, next_url }
  4. 玩家跳转到 next_url 并在后续请求中携带 token。

玩家流程(统一验证服务)

若启用 services/verify

  • 玩家访问 GET /services/verify/?slug=<slug> 使用统一验证页。
  • 提交 POST /services/verify/verify,服务从 config/map.json 读取该关的 answer 并发放 token。

启用该服务时请确保 config/map.json 的关卡条目包含 answer(见 配置文件说明)。