排查客户端「翻译失败」时发现两处会把真实原因吞掉: - Code / WordCount 两个字段阿里有时回字符串、有时回数字,struct 里写死 string 会让整个响应 json.Unmarshal 失败,错误变成「解析失败」,真正的服务端返回码 一个字都看不到。改用 flexStr,两种 JSON 形状都吃。 - code 10009 / "is not activated" 说的是机器翻译产品没开通或 RAM 子账号没授权 (实测:子用户 200212789836990119 缺 AliyunAlimtFullAccess)。这属于账号侧 配置,不是代码问题,所以单独给一条指名道姓的错误,别让它混在通用失败里。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>