2013-10-13 3 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

대신 수동으로 사용자의 쿠키를 설정하는 당신

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

이 함께 쿠키 라인을 대체하기위한, 여권이 그것을 할 수 있습니다.

출처 : (아직 수행하지 않은 경우) http://passportjs.org/guide/authenticate/

0

당신이 시도 설명서의 지시를 따랐다 (사용자 정의 콜백 섹션 참조)

passport.serializeUser(function(user, done) { 
    done(null, user); 
}); 
passport.deserializeUser(function(user, done) { 
    done(null, user); 
}); 
관련 문제