У меня есть простое приложение с авторизацией по стратегии passport-local
. Пользователь отправляет форму на /login
, перенаправляется на маршрутизатор и затем авторизуется:
app.js (часть)
const { indexRouter } = require('./routes/index');
app.use('/login', indexRouter);
passport.use(
'local',
new LocalStrategy(
{
passReqToCallback: true,
usernameField: 'email',
passwordField: 'name'
},
(req, email, name, done) => {
console.log('Logging in: ', email, name);
if (email) {
email = email.trim();
name = name.trim();
return authorizeUser(email, name, done);
}
return done(new Error('User not authorized: no email provided'), null, false);
}
)
);
маршруты / index.js
router.post('/', passport.authenticate('local'), (req, res) => {
res.render('user/success');
});
Однако я хочу иметь обходную ссылку (/bypass
, например), которая авторизует тестового пользователя и перенаправляет на страницу успеха, не запрашивая учетные данные. Как я могу сделать это?