设置使用的翻译服务 translate.service.use
使用方式
translate.service.use('client.edge');
注意,这行代码要加到 translate.execute();
的前面。
它的值有两个:
- client.edge 由微软直接提供翻译支持,不在依赖翻译服务器
- translate.service 如果不设置,默认便是用的这种,这也是v2版本所使用的方式。
其中,translate.service 是 v2 版本出现的,而 client.edge 是 v3 版本出现的。普通的正常使用,我们更推荐大家采用 client.edge
其中,translate.service 正常是translate.js中默认使用的,至于为什么是默认使用它而不是默认使用 client.edge ,主要是考虑到v2版本中已经有数十万网站及应用都已经在使用了,为了完美兼容 v2 版本的translate.js
而 translate.service 又可以私有部署到自己的服务器。普通使用都是使用我们公共的翻译服务,也就是我们自己提前部署好了,您可以直接免费去使用,但是如果您对隐私安全要求极高,数据不允许有一点外泄、又或者内网场景不允许通外网时,那么就需要私有部署 translate.service 服务了,部署到您内网自己的服务器来使用。
client.edge 模式是必须要联网才能使用的。
两种方式的比较
client.edge | translate.service 公共免费翻译 | translate.service 企业级高稳定 | |
---|---|---|---|
翻译通道稳定性 | 比较稳定 | 一般 | 非常稳定 |
翻译字符日上限 | 无上限 | 200万字符/日 | 200万字符/日(可协商增加) |
翻译后端API | 不依赖 | 依赖 | 依赖 |
是否免费使用 | 免费 | 免费 | 收费 |
翻译缓存层数 | 一层缓存-浏览器缓存 | 二层缓存 | 二层缓存 |
翻译服务延迟 | 1~5秒的网络+机器翻译延迟 | 命中服务端缓存<2秒延迟 | 命中服务端缓存<1秒延迟 |
元素整体翻译 | 默认采用 | 默认不采用 | 默认不采用 |
支持语种数量 | 73种 | 112~450种 | 112种 |
待补充更多… | … | … |
翻译通道稳定性 translate.service 公共免费翻译 由于是开源公开免费的,所以使用的非常多,同时为了降低服务器的成本,所以会出现偶尔不稳定情况、以及翻译通道延迟或超时情况,比如一天24小时,会有十几分钟的不稳定情况,而且这个情况会随着使用者越来越多也会表现的稍微加剧。所以我们不推荐你使用 translate.service 公共免费翻译 ,而是采用 client.edge 模式。
另外如果你的网站或项目,客户对稳定性有要求的,您也可以采用 translate.service 企业级高稳定 这种,这种是部署了翻译集群,包括欧洲、美洲、亚洲等多个洲都有服务器作为翻译点,同时内置了翻译的自动负载,一是自动匹配最优翻译节点的通道、二是会自动切换翻译使用 translate.service还是client.edge ,根据当地网络环境等自动进行选择最优切换。翻译服务延迟 是指如果翻译时没有命中浏览器缓存,那么会请求机器翻译接口,将要翻译的文本通过机器翻译接口进行翻译后返回,然后在进行浏览器缓存以及页面翻译。这个请求机器翻译发送跟接收到翻译文本响应的过程,是这里所说的翻译服务的延迟。不过网页基本只要打开翻译过一次了,都会进入浏览器缓存,网页刷新了、切换网页了翻译会极其迅速。