如何使用Passport和nodeJS在angularJS前端中显示用户信息

时间:2014-07-25 13:47:09

标签: javascript angularjs node.js passport.js

我尝试使用the passport tutorial复制此本地身份验证。

但是使用angularJS前端而不是EJS,直到现在一切正常,但是当我想在配置文件页面中显示用户数据时(成功登录后)我遇到了问题

我在谈论这段代码

 // =====================================
    // PROFILE SECTION =====================
    // =====================================
    // we will want this protected so you have to be logged in to visit
    // we will use route middleware to verify this (the isLoggedIn function)
    app.get('/profile', isLoggedIn, function(req, res) {
        res.render('profile.ejs', {
            user : req.user // get the user out of session and pass to template
        });
    });

我知道用户是我需要的数据,但在使用EJS的示例中使用如下:

<!-- LOCAL INFORMATION -->
        <div class="col-sm-6">
            <div class="well">
                <h3><span class="fa fa-user"></span> Local</h3>

                    <p>
                        <strong>id</strong>: <%= user._id %><br>
                        <strong>email</strong>: <%= user.local.email %><br>
                        <strong>password</strong>: <%= user.local.password %>
                    </p>

            </div>
        </div>

我可以使用AngularJS访问相同的数据吗?我有点新鲜,我不明白怎么做

1 个答案:

答案 0 :(得分:0)

是的,你也可以在Angular中获取数据。希望你能引导你的角度应用。使用此:

                                      

本地

                <p>
                    <strong>id</strong>: {{user._id}}<br>
                    <strong>email</strong>: {{user.local.email}}<br>
                    <strong>password</strong>: {{user.local.password}}
                </p>

        </div>
    </div>

此用户&#39;将使用您将在控制器中定义的范围变量

控制器功能

function test($scope) {
    $scope.user = user; //Need to get this user from the server call (by $http or a service)
}