Appearance
启动
后端(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>。
关卡常见交互模式:
- 玩家访问
/{slug}(静态页,若关卡提供了levels/<module>/static/)。 - 静态页调用
POST /api/{slug}/verify提交答案。 - 校验成功后,关卡返回
{ token, next_url }。 - 玩家跳转到
next_url并在后续请求中携带 token。
玩家流程(统一验证服务)
若启用 services/verify:
- 玩家访问
GET /services/verify/?slug=<slug>使用统一验证页。 - 提交
POST /services/verify/verify,服务从config/map.json读取该关的answer并发放 token。
启用该服务时请确保 config/map.json 的关卡条目包含 answer(见 配置文件说明)。