接入匿名设备态协议补齐Cookie字段并放宽保存

This commit is contained in:
yml2213
2026-09-01 19:29:56 +08:00
parent 8447ca82ed
commit 727c32a5f5
6 changed files with 113 additions and 23 deletions
@@ -56,7 +56,11 @@
因此 App 的 `/web/cookie/verify` 不能兑换出完整网页 CK。网页设备字段来自浏览器此前
持久化的 Cookie/Storage 和页面脚本运行态;当前 Python App 登录链不应声称能凭空补齐它们,
也不在脚本中外挂浏览器。缺失时返回 `COOKIE_INCOMPLETE`,精英宝典任务不再回退 HTTP。
也不在脚本中外挂浏览器。2026-09-01 起接入匿名设备态协议
`core/huya/anon_device.py`middle + anonymousLogin)补 `udb_deviceid`/
`udb_guiddata`/`udb_anobiztoken`/`udb_anouid` 四个字段;其余脚本字段(`guid`/
`game_did`/`_qimei_uuid42`/`__yamid_new`)缺失时不再拒绝登录,改为警告并保存
(风控风险自担);精英宝典任务不再回退 HTTP。
### 运行时复核(2026-09-01
@@ -67,7 +71,8 @@
- `__SDID__``__HDID__` 正常返回;
- Cookie 桥只观察到脚本自身的 `udb_appid`/临时 `sdid`,没有生成 `guid`、QIMEI、
`udb_guiddata``udb_deviceid``udb_anobiztoken`
- 因此这次改动不会改变 `COOKIE_INCOMPLETE` 判定,也不会用随机值补齐字段
- 因此这次改动此前不会改变 `COOKIE_INCOMPLETE` 判定,也不会用随机值补齐字段
2026-09-01 登录链接入匿名设备态协议后可补齐 4 个服务端签发字段(见下节)。
从线上下载的 `hydevice-prod-1.2.51-min.js` 在现有 Node 仿真环境中还依赖未实现的
浏览器 API(首个错误为 `window[t(...)] is not a function`),没有将其替换进生产链。
@@ -82,8 +87,8 @@
成功响应;`df/collect` 只下发 `sdid``hdid`
- `7.5-短信登录-滑块.har``web/cookie/verify` 前后的请求也没有新增这 7 个字段。
因此当前日志中的缺失列表是协议事实,不是 Cookie 合并阶段丢失;下一步只有取得
同一网页会话的真实持久化设备态,或找到服务端正式签发接口,才能继续补齐
因此当前日志中的缺失列表是协议事实,不是 Cookie 合并阶段丢失;服务端正式签发
接口已找到并接入登录链(middle + anonymousLogin,见“匿名流程解密”节)
### 真实浏览器实测(2026-09-01,未登录)
+10 -5
View File
@@ -17,8 +17,10 @@
旧登录结果中的 Cookie 缺少网页设备态,已不再作为成功登录或任务链路使用。
纯 App/HTTP 登录不会由 `web/cookie/verify` 下发网页设备 Cookie。浏览器只用于
人工调试和抓取来源,未集成到脚本;当前 App 登录缺少这些字段时直接返回
`COOKIE_INCOMPLETE`,不会伪造或自动启动浏览器。
人工调试和抓取来源,未集成到脚本;登录链已接入匿名设备态协议
`core/huya/anon_device.py`)补 `udb_deviceid`/`udb_guiddata`/`udb_anobiztoken`/
`udb_anouid`,剩余脚本字段(`guid`/`game_did`/`_qimei_uuid42`/`__yamid_new`
缺失时警告并保存,不伪造、不启动浏览器。
## 推荐联调顺序
@@ -38,16 +40,19 @@
执行器只检查字段是否存在,不记录字段值:
```text
必要字段:udb_cred、udb_biztoken、udb_uid、yyuid、sdid、guid、udb_guiddata、udb_deviceid、game_did、_qimei_uuid42、udb_anobiztoken、__yamid_new
必要字段:udb_cred、udb_biztoken、udb_uid、yyuid、sdid、udb_deviceid、udb_guiddata、udb_anobiztoken
```
- 字段齐全:尝试活动或商城 WSS。
- 缺少字段:App 登录返回 `COOKIE_INCOMPLETE`任务日志列出缺失字段并停止,不创建 HTTP 客户端,例如:
- 缺少字段:任务日志列出缺失字段并停止,不创建 HTTP 客户端,例如:
```text
Cookie 缺少网页设备态(guid, udb_guiddata),已停止活动 HTTP 回退
Cookie 缺少网页设备态(udb_deviceid, udb_guiddata, udb_anobiztoken),已停止活动 HTTP 回退
```
`guid`/`game_did`/`_qimei_uuid42`/`__yamid_new` 四个脚本字段无服务端签发接口,
登录时缺失只警告不阻断保存,WSS 判定也不再要求(风控风险自担)。
- WSS 握手、`wsLaunch``getConfig` 或业务 RPC 任一步失败:任务直接失败并记录具体阶段,便于修复 Cookie 或协议参数。
## WSS 专项验收