tl; dr: Я хочу разобраться с битом (req, res)
в конце кода.
Мне трудно понять фрагмент кода с использованием `passport.authenticate () 'с использованием локальной стратегии.
У меня есть следующий (рабочий) маршрут:
router.post("/login", function (req, res, next) {
passport.authenticate('local', { session: false }, function (err, user, info) {
if (err || !user) {
return res.status(400).send({
message: "Something went wrong",
user: user
})
}
return res.send({user, info})
}) (req, res) // What´s this??
})
Насколько я могу судить, маршрут вызывает passport.authenticate()
, который затем вызывает локальную стратегию, которую я установил в другом файле, который в свою очередь возвращает err, user, info. После выполнения обратного вызова этот код обрабатывает возможные ошибки и, если все прошло нормально, отправляет обратно пользователю сообщения, настроенные в локальной стратегии ...
То, что я не понимаю, является последним немного. Что именно там делает 1014? Я знаю, что это критический бит, потому что маршрут не будет работать без этой строки, но я не понимаю, почему и что это такое (вызывает ли она функцию с параметрами req и res? Возвращает ли она req и res?) поскольку я не распознаю шаблон (он действительно напоминает IIFE, но опять же я не знаю, что именно он вызывает, поскольку passport.authenticate()
сам по себе является вызовом функции ... или нет?