2
我想一些幫助從passport.js authenticate documentation理解下面的例子:瞭解回調
app.get('/login', function(req, res, next) {
passport.authenticate('local', function(err, user, info) {
if (err) { return next(err); }
if (!user) { return res.redirect('/login'); }
req.logIn(user, function(err) {
if (err) { return next(err); }
return res.redirect('/users/' + user.username);
});
})(req, res, next); //***UNSURE ABOUT THIS***
});
我理解的代碼做什麼 - 但我不會在回調函數的最後知道(req, res, next)
什麼是爲了。爲什麼有必要?它是否提供了(err, user, info)
的值?如果是這樣的話,爲什麼我沒有看到更多以參數結尾的函數調用 - 這可能與傳遞next
對象有關嗎?
希望有人幫助我提高對此概念的理解。