Skip to content

[Bug] 微信 Android 扫描 iLink 二维码后提示“网络错误,请稍后再试”,状态最终 expired #242

Description

@morninghopeamo

[Bug] 微信 Android 扫描有效 iLink 二维码后稳定提示“网络错误,请稍后再试”,状态保持 wait 后 expired

问题摘要

使用 @tencent-weixin/openclaw-weixin@2.4.6 对应的 iLink 二维码登录协议时,get_bot_qrcode 请求可以成功返回二维码数据,但微信 Android 客户端扫描后稳定显示:

网络错误,请稍后再试

服务端二维码状态没有进入 scanedconfirmed,而是保持等待状态,最终变为 expired

首次在完整登录流程中发现该问题,随后使用最小独立探针复现。独立探针不包含 OpenClaw Runtime、模型调用、provider routing、业务 GUI 或凭证写入逻辑。

环境

  • 插件协议版本:@tencent-weixin/openclaw-weixin@2.4.6
  • PC:Windows 10 x64
  • 手机客户端:微信 Android,小米设备
  • 测试时间:2026-08-01 约 10:20,中国标准时间 UTC+8
  • 二维码接口:官方 get_bot_qrcode 流程,bot_type=3
  • 二维码解码后的 hostname:liteapp.weixin.qq.com
  • Windows 系统代理:关闭
  • WinHTTP:直连
  • DNS:解析正常
  • VPN:关闭

账号标识、Token、UIN、二维码内容和本地文件路径均未在本报告中公开。

复现步骤

  1. 按官方插件使用的请求格式获取一次性 iLink 登录二维码。

  2. 接口返回 HTTP 200,并同时包含二维码文本和二维码图片内容。

  3. 将同一二维码内容分别:

    • 渲染为终端字符二维码;
    • 写入独立 PNG 图片。
  4. 使用微信 Android 扫描二维码。

  5. 手机立即显示“网络错误,请稍后再试”。

  6. 继续轮询二维码状态。

  7. 状态始终未进入 scanedconfirmed,最后变为 expired

实际结果

完整登录流程的脱敏摘要:

{
  "terminal": "expired",
  "exitCode": 0,
  "qrFetches": 1,
  "statusPolls": 5,
  "vaultCommitted": false,
  "guiWindows": 0
}

独立 PNG 隔离探针结果:

PROBE_TERMINAL=completed
MANUAL_OUTCOME=mobile_network_error
QR_HOSTNAME=liteapp.weixin.qq.com
PNG_DELETED_AFTER_PROBE=True

终端字符二维码和独立 PNG 二维码在手机端产生完全相同的错误,因此字符 Renderer、终端显示比例以及二维码转 PNG 过程不是当前故障的首要原因。

二维码获取请求能够成功完成,故障发生在手机扫描二维码后的微信/iLink 授权阶段。

期望结果

微信扫描二维码后应显示授权确认页面。

用户确认后,二维码状态应进入 scaned / confirmed,并返回可用于完成登录的凭证。

希望协助确认

请协助确认以下任一情况是否可能导致该错误:

  1. 当前微信账号尚未获得 ClawBot/iLink 授权资格;
  2. 微信 Android 客户端存在最低版本要求;
  3. 该能力存在账号、地区或灰度开放限制;
  4. 微信客户端风险控制拦截了本次授权;
  5. 二维码已成功创建,但服务端没有为该账号建立有效授权会话;
  6. bot_type=3 或当前 iLink 客户端版本已经发生服务端兼容性变化。

如需查询服务端日志,请告知后续测试应记录哪些非敏感关联字段,例如请求时间、公开错误码或服务端返回的 request ID。不会公开提交二维码正文、登录 Token、UIN 或微信账号标识。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions