如何使用Node.js和Passport进行身份validation后,使用自己的ID将用户redirect到主页?
我刚刚开始学习node.js,所以在我身上很容易:P
我正在使用护照来validation用户。 成功validation后,用户需要redirect到他的主页,并将其ID作为URL参数,例如:
/home?id=325346546
这是我的routes.js的一部分
// process the login form app.post('/', passport.authenticate('local-login', { successRedirect : '/home?id='+req.user._id, //error because 'req' isn't declared failureRedirect : '/', failureFlash : true }));
这是我的想法,我想通过ID作为参数的URL。
我曾试图把一个
function(req, res) { }
但它没有工作。 任何帮助将不胜感激。
感谢本,我得到了它的工作,所以在这里给我自己的问题是完整的代码:
// process the login form app.post('/', function(req, res, next) { passport.authenticate('local-login', {failureFlash:true}, function(err, user, info) { if (err) { return next(err); } if (!user) { return res.redirect('/'); } req.logIn(user, function(err) { if (err) { return next(err); } return res.redirect('/home?id=' + user._id); }); })(req, res, next); });