使用Restangular和Passport进行身份验证问题

时间:2013-09-01 06:56:14

标签: angularjs express coffeescript restangular passport.js

我目前正在开发一个宠物项目,该项目在前端使用AngularJS,在Express上使用Express 后端。 Angular前端使用Restangular模块使用RESTful请求与后端进行通信。在后端,会话使用Passport进行身份验证。在浏览器上,身份验证效果非常好(例如,使用Postman,我可以发布我的登录信息,然后从服务器获取我想要的任何内容)。

问题是使用Restangular,我首先通过发送带有登录信息的POST请求来“登录”。主要逻辑如下所示:

    account = Restangular.all 'login'

    $scope.loginInformation = 
        {
            username: ''
            password: ''    
        }
    succesfulLogin = (res) ->
        console.log res
    unsuccesfulLogin = () ->
        console.log "Login failed"
        console.log $scope.loginInformation
    $scope.login = () ->
        account.post($scope.loginInformation).then succesfulLogin, unsuccesfulLogin

输入正确的用户名和密码后,控制台会打印响应“Login Succesful。您现在已登录”,这是我们编码为正确登录时发送的响应(我们在postman上看到的响应相同)。< / p>

现在问题是,无论我尝试GET,代码中完成的每个GET请求都会返回403 Forbidden响应。

我在控制台上得到相同的回复

GET http://[ADDRESS] 403 (Forbidden) 
Object {data: "Error: Not Authenticated", status: 403, headers: function, config: Object}

我不明白浏览器的工作方式和Postman的工作方式,但我的应用程序没有。

有没有人有类似设置的运气?

我的直觉告诉我,这与角度处理饼干的方式有关(尽管不确定)。

0 个答案:

没有答案