Chrome扩展Bing翻译

时间:2015-07-13 10:43:48

标签: google-chrome-extension oauth-2.0 bing-api

我正在撰写将使用Bing翻译API的Chrome扩展程序。要使用它我需要一个访问令牌,我可以使用我的clientID和客户端密钥请求。它每十分钟到期一次。

这个客户端的正确方法是什么?我显然不愿意分发我的客户机密,但访问令牌每十分钟到期一次。

1 个答案:

答案 0 :(得分:1)

您无法以防弹方式保护客户端。

你基本上有两个选择。

  1. 接受可以检查您的扩展程序代码并提取秘密的事实。然后,您可以使用chrome.identity以这种方式使用OAuth。考虑到API是可计费的,这是次优的。

  2. 将秘密移至某个托管服务器。然后,您的扩展程序必须向服务器询问令牌(该令牌过期,此时需要从您的服务器重新请求)。这是唯一安全的方式。

  3. Some APIs(不是Bing)提供了一种仅使用客户端ID进行身份验证的方法,了解JavaScript客户端无法保护秘密。这不是一个选项 - 您的代码假设生成令牌服务器端。