实现内置虎牙扫码登录与绑定 Connector

This commit is contained in:
yml2213
2026-11-09 17:11:01 +08:00
parent b0b8e983ba
commit a9937ef8c6
41 changed files with 4246 additions and 152 deletions
+16 -16
View File
@@ -175,28 +175,28 @@ cp .env.server.example .env
| `ADMIN_SESSION_SECRET` | 后台登录态签名密钥 |
| `ADMIN_DEFAULT_USERS_JSON` | 默认后台用户 |
| `KAQUAN91_USER_ID` / `KAQUAN91_SECRET` | 91 卡券开放接口凭据 |
| `SEMI_AUTO_CONNECTOR_BASE_URL` | 半自动履约 Connector 基址(虎牙登录/绑定/CK 注入票据) |
| `SEMI_AUTO_CONNECTOR_API_KEY` | order_site 与 Connector 的内部鉴权密钥 |
| `SEMI_AUTO_CONNECTOR_BASE_URL` | 可选的远程真实 Connector 基址;默认使用 order_site 内置实现 |
| `SEMI_AUTO_CONNECTOR_API_KEY` | 使用远程 Connector 时的内部鉴权密钥 |
| `SEMI_AUTO_DEFAULT_CONNECTOR_MODE` | 新任务默认 Connector:`embedded` / `external` / `mock`,默认 `embedded` |
| `SEMI_AUTO_CONNECTOR_TIMEOUT_MS` | Connector 请求超时,默认 15000 毫秒 |
### 本地半自动履约 Mock
### 本地半自动履约测试
`docker-compose.dev.yml` 默认把 Connector 指向 order_site 自带的开发 Mock:
开发 Mock 只负责生成订单,登录、绑定、浏览器票据注入和完成确认都走真实流程。
默认使用 order_site 内置真实 Connector,不需要启动 live-hub-py,也不需要配置外部地址。
只有显式选择远程 Connector 时,才需要设置 `SEMI_AUTO_CONNECTOR_BASE_URL` 和
`SEMI_AUTO_CONNECTOR_API_KEY`。
```text
http://127.0.0.1:3000/api/v1/dev-mock/connector
```
真实登录 / 绑定验证流程:
本地验证流程:
1. 打开后台 `/admin/dev-mock`,Mock 范围选择“仅 Mock 订单(内置真实登录 / 绑定 / 注入)”。
2. 生成测试单,打开客户链接,使用虎牙 App 扫码并确认登录。
3. 页面创建绑定二维码,等待 Connector 识别角色,核对账号和区服后确认绑定。
4. 打开后台“任务 → 半自动履约”,确认任务 Connector 显示“内置真实”,领取并生成浏览器注入票据。
5. 扩展消费票据后完成履约,核对任务、履约、成本快照和财务确认。
1. 打开后台 `/admin/dev-mock`,在“半自动履约测试单”中生成订单。
2. 打开客户链接,点击获取登录二维码;Mock 会在两次轮询后自动模拟登录成功。
3. 页面自动创建绑定二维码,轮询后识别测试角色,点击确认绑定。
4. 打开后台“任务 → 半自动履约”,领取任务并生成浏览器注入票据。
5. 完成履约,核对任务、履约、成本快照和财务确认。
需要接真实 Connector 时,显式覆盖 `SEMI_AUTO_CONNECTOR_BASE_URL`,例如
`http://host.docker.internal:8800`。开发 Mock 路由在非开发环境返回 404。
只联调页面、不调用虎牙接口时,可在同一个表单选择“订单 + 登录绑定都 Mock”;
该模式使用 order_site 内置 Mock Connector。开发 Mock 路由在非开发环境返回 404。
半自动履约真实 PostgreSQL 集成测试需要独立库,避免写入生产 dump: