【问题标题】:How do I implement secure OAuth2 consumption in AngularJs?如何在 AngularJs 中实现安全的 OAuth2 消费?
【发布时间】:2013-08-30 06:40:43
【问题描述】:

我正在使用 AngularJS 设置 oauth2 与 Salesforce 连接。当我尝试使用 $http 进行初始 GET 时,出现 CORS 错误 - 我的客户端不允许访问控制允许来源。但是,在我的控制器功能中使用下面的 hack 是可行的。

鉴于我无法控制服务器,是否有更好的方法在 AngularJs 中执行此操作?我的后端是 Firebase,所以如果我能像 Facebook 一样通过 FIrebase 做到这一点,那就太好了:

$scope.auth = function () {

    var authUrl = $scope.AUTHORIZATION_ENDPOINT + 
            "?response_type=token" +
            "&client_id="    + $scope.CLIENT_ID +
            "&redirect_uri=" + "https://www.xyz/";

    window.location = authUrl ; 

【问题讨论】:

标签: angularjs salesforce firebase firebase-security angularfire


【解决方案1】:

通过浏览器对不同服务器进行异步调用时会出现cors问题。

所以如果调用是从另一台服务器发出的,它就不会出现。所以你必须使用代理服务器,然后再调用你的实际服务器。

您可以尝试以下简单的代理服务器。 https://www.npmjs.com/package/cors-anywhere

或者您可以编写自己的代理服务器,该服务器与您的客户端应用程序在同一域上运行,并将您的请求代理到安全服务器。

【讨论】:

    猜你喜欢
    • 2012-07-11
    • 2017-08-06
    • 2011-04-05
    • 1970-01-01
    • 2014-01-05
    • 2015-08-19
    • 2010-09-21
    • 2020-11-02
    相关资源
    最近更新 更多