Это мой текущий механизм аутентификации паспорта
const requireAuth = passport.authenticate('jwt', { session: false });
И моя стратегия определяется следующим образом:
passport.use('jwt', new Strategy(options, (payload, done) => {
// my logic
}))
Теперь мне нужно изменить requireAuth
, чтобы он функционировал как:
function requireAuth(allowProxyLogin) {
return passport.authenticate('jwt', { session: false })
}
Теперь мне нужно передать эту переменную allowProxyLogin
в мою стратегию. Как я могу сделать это с минимальными изменениями в моей стратегии?
EDIT:
Для записи я изменил функцию requireAuth
на:
function requireAuth(allowProxyLogin) {
return [
(req, res, next) => {
req.allowProxyLogin = !!allowProxyLogin;
return next();
},
passport.authenticate('jwt', { session: false, passReqToCallback: true }),
];
}
Чтобы упростить реализацию ответа @ Saurabh.