Я изучаю паспорт JS и обнаружил что-то, что меня действительно смущает:
При выполнении некоторых пользовательских стратегий (например, регистрации) стратегия помещается в запрос как обычное промежуточное ПО:
app.post('/signup', passport.authenticate({...}), (req,res,next)=> {})
Однако, когда он используется в примере входа или защищенного маршрута, они используют стратегию внутри обратного вызова запроса:
app.get('/protected', function(req, res, next) {
passport.authenticate('local', function(err, user, info, status) {
if (err) { return next(err) }
if (!user) { return res.redirect('/signin') }
res.redirect('/account');
})(req, res, next);
});
В чем разница между этими двумя методами использования стратегии