我是 JavaScript 新手。
我想要的帮助是了解如何保护用于访问我的 Restful Web 服务的 API 密钥。
我正在使用 API 密钥访问一些 Restful Web 服务,我希望这些 API 密钥受到保护。当我将 API 密钥放在控制器中时,它们将对用户可见,因为最终用户可以看到 Javascript 代码。
无论如何,我可以将这些注册为一些变量并在查看 Javascript 代码的最终用户看不到 API 密钥的控制器中使用吗?
提前致谢!
我是 JavaScript 新手。
我想要的帮助是了解如何保护用于访问我的 Restful Web 服务的 API 密钥。
我正在使用 API 密钥访问一些 Restful Web 服务,我希望这些 API 密钥受到保护。当我将 API 密钥放在控制器中时,它们将对用户可见,因为最终用户可以看到 Javascript 代码。
无论如何,我可以将这些注册为一些变量并在查看 Javascript 代码的最终用户看不到 API 密钥的控制器中使用吗?
提前致谢!
如果您需要保护任何东西,请在服务器上执行。例如,您可以在服务器上代理 api 调用,但您无法使用客户端 javascript 代码保护任何内容。
你完全糊涂了。
您正试图通过默默无闻来实现安全性。客户端上的所有内容都是透明可破解的。
只有在成功的身份验证和授权后,才应允许用户访问资源。时期。
因此,如果您的 API 密钥应该是秘密的(如 Facebook 提供的,...),您必须将它们存储在服务器上
(顺便说一句:删除 angularjs 标签)。
我将 AngularJS 与 PlayFramework 一起使用,似乎我可以解决这个问题,因为外部 Web 服务/API 是通过 Play 控制器访问的,其中控制器方法由 AngularJS 模型访问
jsRouter.controllers.Application.tasks().ajax
因此,外部 API 密钥不必在 AngujarJS 模型中。
谢谢大家的帮助。