【发布时间】:2017-11-02 17:59:41
【问题描述】:
所以基本上我想将 JWT 令牌存储在 cookie 中,以便以后可以访问它来验证 API 调用。我不知道该怎么做。
passport.use(new LocalStrategy(
function(email, password, done) {
User.getUserByEmail(email, function(err, user){
if(err) throw err;
if(!user){
return done(null, false, {message: 'Unknown User'});
}
User.comparePassword(password, user.password, function(err, isMatch){
if(err) throw err;
if(isMatch){
const token = jwt.sign(user, config.secret, {
expiresIn: 604800 // 1 week
});
//STORE TOKEN AS A COOKIE
return done(null, user);
} else {
return done(null, false, {message: 'Invalid password'});
}
});
});
}
));
router.post('/login',
passport.authenticate('local', {successRedirect:'/', failureRedirect:'/users/login',failureFlash: true}),
function(req, res) {
res.redirect('/');
});
提前致谢,埃德。
【问题讨论】:
-
你使用的是 express 节点还是普通节点?
标签: node.js reactjs cookies jwt