所以我是认证的新手。我只是使用Passport设置我的登录,现在我的用户应该登录。
router.post('/login/data',
passport.authenticate('local', {successredirect:'/', failureredir:'/login', failureFlash: true}),
function(req, res) {
// If this function gets called, authentication was successful.
// `req.user` contains the authenticated user.
res.redirect('/');
});
它将我重定向到我的主页,但现在我希望我的应用中的每个页面都有所不同,具体取决于登录的用户。如何根据登录用户的数据呈现我的页面?
答案 0 :(得分:2)
在主页的路径中,您可以检查是否有用户通过身份验证,如果是,则使用其数据呈现模板。
router.get('/', function(req, res){
if (req.user) {
res.render('index', { user: req.user });
} else {
res.redirect('/login');
}
});
然后在.ejs
文件中,您可以访问用户的数据。
<h1>Username: <%= user.username %></h1>