2013-10-13 44 views
2

我管理与passport.js会议失去了与passport.js

app.post('/login', passport.authenticate('local'), function(req, res) { 
     res.cookie('username', req.user.username); 
     res.redirect('/'); 
    }); 

登录,但我会似乎失去之后。

app.post('/user/favorites', function(req, res) { 
    // `req.user` contains the authenticated user. 

    console.log(req.user); // Undefined 
    if(req.isAuthenticated()) { // false 
     console.log('HI'); 
    } 
}); 

回答

0

除了手动设置用户的cookie,让护照为你做它

req.logIn(user, function(err) { 
    if (err) { return next(err); } 
    return res.redirect('/users/' + user.username); 
}); 

这个替换您的Cookie线。

来源:http://passportjs.org/guide/authenticate/(见定制的回调部分)

0

您已按照文件的指示,尝试(如果尚未完成)

passport.serializeUser(function(user, done) { 
    done(null, user); 
}); 
passport.deserializeUser(function(user, done) { 
    done(null, user); 
});