Azure文本翻译API v3.0自3月8日失效(401错误)技术求助
排查Azure文本翻译API v3.0 401错误的线索
问题描述
Android应用使用Azure文本翻译API v3.0达2年,3月8日起突然返回401错误,控制台测试同样失败。已验证密钥正确,TPS未超出限制,Speech SDK功能正常,订阅ID:78e39975-800d-45f8-a109-c6b7a30076c8,REST请求返回:
Response{protocol=h2, code=401, message=, url=https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=zh-Hans&to=en}
排查步骤
- 确认资源区域与请求端点匹配:检查翻译资源的创建区域,若使用区域端点(如
https://eastasia.api.cognitive.microsofttranslator.com/),需确保代码及控制台测试时的端点与资源区域一致;若用全局端点,确认资源未被限制仅允许区域访问。 - 验证密钥有效性与资源状态:
- 尝试使用资源的Secondary密钥替换Primary密钥测试,确认是否为Primary密钥意外失效;
- 在Azure控制台查看翻译资源的状态,确认未被禁用(Speech SDK正常不代表翻译资源状态正常,二者为独立资源)。
- 检查请求头认证格式:REST调用需确保请求头包含正确的认证信息,格式应为
Ocp-Apim-Subscription-Key: <你的密钥>,避免拼写错误、大小写错误或多余空格;若使用Token认证,确认Token未过期且生成时使用了正确的资源密钥和区域。 - 排查访问限制配置:检查翻译资源的IP防火墙或虚拟网络访问规则,确认应用的出口IP在允许列表内;3月8日若应用部署环境变更(如服务器IP更换),可能触发访问限制导致401。
- 确认资源与订阅的关联:在Azure控制台找到翻译资源,检查其所属订阅ID是否为
78e39975-800d-45f8-a109-c6b7a30076c8,避免资源被误迁移至其他订阅。 - 检查API版本兼容性:虽然v3.0为稳定版本,但确认代码中
api-version参数未被误修改,控制台测试时也需指定相同版本。
内容的提问来源于stack exchange,提问作者guan yuzhu
相关产品推荐
相关产品推荐

