Files
2026-07-30 23:29:17 +08:00

109 lines
2.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Brass Birmingham Linux Native Backend v1 Usable
这是一个基于现有客户端协议反推出来的 Linux 原生后端,用来替代原始 Windows 服务端。
## 版本定位
`v1-usable` 是当前可用的基线版本,重点覆盖:
- 登录 / 注册
- 当前用户信息
- 房间列表 / 创建 / 加入 / 离开
- 事件读写
- `lastSeenRevision` 更新
## 目录
```text
linux-native-backend-v1-usable/
app/
server.py
data/
users.json
games.json
run.sh
docker-compose.yml
```
## 快速启动
### Docker Compose
```bash
docker compose up -d --build
```
默认监听 `8765` 端口。
### 本机运行
```bash
chmod +x run.sh
./run.sh
```
也可以手动指定:
```bash
HOST=0.0.0.0 PORT=8765 ./run.sh
```
## Docker 镜像
Docker Hub 仓库:
```text
docker.io/sigema/brass-birmingham-backend
```
## 数据持久化
用户和房间数据保存在 `data/`
- `data/users.json`
- `data/games.json`
容器方式运行时,建议把该目录挂载出去,避免重建后数据丢失。
## 认证
支持以下方式:
- `Authorization: Bearer fake-token-<user_id>`
- `access_token: fake-token-<user_id>`
- `X-User-Id: <user_id>`
## API
- `POST /login`
- `POST /login/with/e-mail`
- `POST /register`
- `GET /me`
- `POST /logout`
- `POST /password/email`
- `GET /1.0.0/games`
- `POST /1.0.0/games`
- `PUT /1.0.0/games/<game_id>/players`
- `DELETE /1.0.0/games/<game_id>/players`
- `GET /1.0.0/games/<game_id>/events`
- `POST /1.0.0/games/<game_id>/events`
- `DELETE /1.0.0/games/<game_id>/events`
- `GET /1.0.0/games/<game_id>/events-and-metadata`
- `POST /1.0.0/games/<game_id>/events-and-metadata`
- `POST /1.0.0/games/<game_id>/metadata/lastSeenRevision`
- `POST /1.0.0/devices`
- `GET /debug/games`
## 测试
```bash
python test_local.py
python test_turn_progression.py
```
## 说明
- 这是逆向恢复版实现,不保证覆盖所有隐藏边缘逻辑。
- 当前版本以“可用”为目标,后续可以继续对齐真实客户端返回结构。