文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
实时翻译的工作流程
由于使用了 Flask-Babel,本应用对外语有很好的支持,可以支持尽可能多的语言,只要我找到了对应的译文。 但是遗漏了一个元素,用户将会用他们自己的语言发表动态,所以用户很可能会用应用未知的语言发表动态。 自动翻译的质量大多数情况下不怎么样,但在,如果你只想对另一种语言的文本了解其基本含义,这已经足够了。
这正是 Ajax 大展身手的好机会! 设想主页或发现页面可能会显示若干用户动态,其中一些可能是外语。 如果我使用传统的服务器端技术实现翻译,则翻译请求会导致原始页面被替换为新页面。 事实是,要求翻译诸多用户动态中的一条,并不是一个足够大的动作来要求整个页面的更新,如果翻译文本可以被动态地插入到原始文本下方,而剩下的页面保持原样,则用户体验更加出色。
实施实时自动翻译需要几个步骤。 首先,我需要一种方法来识别要翻译的文本的源语言。 我还需要知道每个用户的首选语言,因为我想仅为使用其他语言发表的动态显示“翻译”链接。 当提供翻译链接并且用户点击它时,我需要将 Ajax 请求发送到服务器,服务器将联系第三方翻译 API。 一旦服务器发送了带有翻译文本的响应,客户端 JavaScript 代码将动态地将该文本插入到页面中。 你一定注意到了,这里有一些特殊的问题。 我将逐一审视这些问题。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论