近日,微软对 Edge 浏览器内置翻译的接口进行了迁移。旧接口停止服务后,多款依赖该接口的三方翻译工具出现异常,许多用户反馈翻译功能失效、控制台报错 404 等问题。
受影响的项目
IntelliJ TranslationPlugin 是一款面向 JetBrains IDE 的翻译插件。8 月 4 日起,许多用户反馈微软翻译不可用,报错信息均为"Edge authentication endpoint returns 404",指向同一个根因。该插件作者仍在修复中,例句功能预计将无法保留。
kiss-translator 是一款开源的双语对照翻译扩展。用户报告 404 后,博主 Ankio 第一时间发布博客记录了接口变化的细节,并在 GitHub 提交了修复 PR,目前已合并。
凡是依赖旧接口 api-edge.cognitive.microsofttranslator.com 的工具,只要没有跟进适配新端点,都会报同样的 404 错误。
怎么修复
过去第三方翻译工具调用的接口是 api-edge.cognitive.microsofttranslator.com/translate,需要两步:先向 Auth 接口请求 Token,再带着 Token 发翻译请求。Body 格式为对象数组 [{ Text: "..." }],请求头需携带 Authorization: Bearer <token>。
而 Edge 浏览器自身翻译使用的端点是 edge.microsoft.com/translate/translatetext,无需鉴权。微软此次停掉了前者,导致第三方工具的调用链路断了,开发者需要迁移。
迁移到新端点只需改动几点:
将接口地址改为 edge.microsoft.com/translate/translatetext移除 Authorization 头及相关鉴权逻辑 将请求体从 [{ Text: "..." }]改为["..."]自动检测源语言时,将 Query 参数 from留空即可
还没更新怎么办
如果你常用的翻译工具迟迟没有跟进修复,可以试试用AI辅助解决。把下面两个链接丢给AI,让它帮你读代码、生成补丁:
1. Microsoft Edge 翻译 API 调用指南
https://www.ankio.net/research/technology/microsoft-edge-translate-api
2. kiss-translator #992
https://github.com/fishjar/kiss-translator/commit/0c5df0e8875f579f1c38fdc6a82100fd0417d766
博客里记录了接口变化的细节,PR里有具体的代码改动。两个结合起来喂给AI,基本能生成可用的修复代码。
注意事项
该接口为Edge前端内部接口,官方并未对外公开文档。路径或风控策略存在调整可能,建议在生产环境中保留降级方案。
夜雨聆风