yml2213
|
a9d711a7e9
|
fix(huya): 结构体尾部字段容错解析(服务端新增 ZERO 字段不再打挂整个 RPC)
真机现象(2026-10-15,外部 CK 导入后查询角色):checkUserBindGameAccount 响应结构
尾部多了 tag6(ZERO 类型 0x6c),共享的 read_struct 读到非 STRUCT_END 直接抛
「期望 STRUCT_END, 实际 0x0c」,整个 RPC 返回 None —— 工作台「查询角色」永远失败。
- taf_protocol:read_struct 收尾改为按 TAF 语义跳过未建模的尾部字段(上限 32 个,
防止解析错位时无限吞字节);新增 skip_to_struct_end()
- frame_decoder / shop_structs:抽出 decode_struct_bytes 与 ShopRawRsp.from_payload,
WSS 与 HTTP 两条通道共用一份通用解码逻辑(wss_client 同步改用)
验证:tests/test_huya_struct_parse_resilience.py 用真机响应字节回归(含 tag6=ZERO 的
响应能解析出角色「泪雨全是谎言」);按 AGENTS.md 反向验证 —— 注掉
skip_to_struct_end() 即复现线上报错「期望 STRUCT_END, 实际 0x0c」,还原后恢复。
全量 pytest 通过。
|
2026-10-15 15:21:34 +08:00 |
|
yml2213
|
f540dcfc29
|
feat(huya): 对齐积分中心开通链路(2026-10-13 抓包)
按 10.13「开通精英宝典/购买幸运币」抓包(m-shop.huya.com/points.html)对齐商城链路:
- WSS host 改为 launch.queryHttpDns 动态解析(失败回退抓包实测 host);握手 baseinfo
只带 uid/guid/页面 UA/exp,Origin 与页面同源
- wsLaunch 改为带真实 lUid/sGuid;初始化补上 AUTH(0x0A) → getConfig →
UpdateUserExps(0x17),并把 getConfig 下发的版本 map 原样回传(不回传则业务 RPC 无响应)
- 补齐新 RPC:getSupplierInfoV5 / acceptHyProtocolV5 / calcOrderPromotion /
PlayMallUI.getMyPromotion|queryAllocation / wupui.* / huyauserui.getUserProfile
- 下单参数对齐:shopAppInfo.scene=7 与订单 src/orderScene=4 分离、orderType=6、
bizType=5、gameCategoryId=507、extraParam.bizParams 标记 jifencenter、env 仅空点击
序列、支付回调指向 m-shop.huya.com/points.html
- 开通链路抽到 services/huya_shop_flow.py,充值任务改为调用它
验证:新增 tests/test_huya_points_shop_protocol.py 与抓包逐字节比对(心跳、版本回传、
wsLaunch/getConfig/下单/支付帧与新 RPC 参数,共 10 条);按 AGENTS.md 做了反向验证
(把 jifencenter 改成 0 后该用例变红,还原后恢复)。ruff format --check 与全量 pytest 通过。
|
2026-10-15 14:56:30 +08:00 |
|
yml2213
|
95ad900ef0
|
统一推送前Python代码格式
|
2026-09-02 18:11:41 +08:00 |
|
yml2213
|
aaaa568916
|
修正活动WSS会话guid一致性
|
2026-09-02 18:07:31 +08:00 |
|
yml2213
|
61ce0c9672
|
WSS连接不信任环境代理避免SOCKS劫持
|
2026-09-01 20:30:01 +08:00 |
|
yml2213
|
9f3e3a74ce
|
修正活动WSS AUTH帧对齐9.1抓包字节
|
2026-09-01 20:25:31 +08:00 |
|
yml2213
|
48c37bb8d7
|
虎牙网页Cookie来源驱动合并与WSS传输门禁
|
2026-09-01 19:17:32 +08:00 |
|
yml2213
|
8e3c0e69bc
|
修正虎牙活动wsLaunch包封装
|
2026-09-01 12:56:37 +08:00 |
|
yml2213
|
5a1456e3cb
|
修正虎牙活动WSS初始化序列
|
2026-09-01 12:52:26 +08:00 |
|
yml2213
|
26514b332d
|
完成虎牙宝典WSS绑定与快照隔离重构
|
2026-09-01 12:40:22 +08:00 |
|
yml2213
|
17e72d40a5
|
支持虎牙活动WSS自定义连接来源
|
2026-09-01 12:21:09 +08:00 |
|
yml2213
|
3aca102741
|
补齐虎牙宝典活动与商城WSS协议
|
2026-09-01 11:46:40 +08:00 |
|
yml2213
|
eb065a7c77
|
接入虎牙精英宝典最新商城前置流程
|
2026-09-01 11:42:52 +08:00 |
|
yml2213
|
684e16a07a
|
重构虎牙精英宝典协议与支付状态链路
|
2026-09-01 11:31:15 +08:00 |
|
yml2213
|
09ab80e062
|
完成 Ruff 全量清理
|
2026-08-31 10:55:44 +08:00 |
|
yml2213
|
b58c6b4357
|
执行 Ruff 安全自动修复
|
2026-08-31 10:28:14 +08:00 |
|
yml2213
|
6439dc1942
|
type: 收窄虎牙 HTTP 与 WSS 客户端类型
|
2026-08-30 20:04:08 +08:00 |
|
yml2213
|
e1d47a85be
|
新增虎牙账号和任务基础功能
|
2026-07-04 16:31:12 +08:00 |
|