Как перенаправить пользователя на другую страницу? - PullRequest
0 голосов
/ 27 сентября 2018

Я застрял с одной проблемой.Как вы можете догадаться из заголовка, проблема в том, что я делаю цикл перенаправления.Простая ситуация, но как новичок я не мог ее решить.Я предоставлю свой код для вас, чтобы увидеть проблему.Так что это мои экспресс-маршрутизаторы `

const passport = require('passport');

module.exports = (app) => {
  app.get('/auth/eventbrite',
    passport.authenticate('eventbrite', {}));

  app.get('/auth/eventbrite/callback',
    passport.authenticate('eventbrite', { failureRedirect: '/' }),
    (req, res) => {
      if (!req.user) {
        throw new Error('user null');
      }
      res.redirect('/dashboard');
    });

  app.get('/api/logout', (req, res) => {
    req.session = null;
    req.logout();
    res.redirect('/');
  });

  app.get('/api/current_user', (req, res) => {
    res.send(req.user);
  });

  app.get('/dashboard', (req, res) => {
    console.log(req.user, 'user');
    if (!req.user) {
      res.redirect('/');
    } else {
      res.redirect('/dashboard');
    }
  });
};

Вы можете заметить, что я перенаправляю пользователя на / панель мониторинга как при паспортной аутентификации, так и при получении запросов.Моя цель - не дать пользователю зайти на панель инструментов, если он не аутентифицирован.

1 Ответ

0 голосов
/ 27 сентября 2018

Если пользователь вошел в систему и перенаправлен на приборную панель, приборная панель снова перенаправляет его на приборную панель.Это создает бесконечный цикл.Вместо этого, если пользователь вошел в систему, маршрут панели мониторинга должен ответить.Скорее всего, вы хотите отправить ему html-страницу панели инструментов.

...