如何使用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); });