Auth0 не возвращает пользователя при входе в систему - PullRequest
0 голосов
/ 09 января 2019

У меня есть экспресс-приложение, размещенное на Google App Engine, и я пытаюсь использовать аутентификацию с auth0, однако после входа в систему я перенаправляюсь обратно на страницу входа. Я считаю, что это потому, что когда я проверяю, вошел ли пользователь в систему, он всегда возвращает false и, следовательно, перенаправляет. Я не уверен, почему в моем обратном вызове не хранится информация о пользователях. Вот мой роутер авторизации:

router.get('/login', passport.authenticate('auth0', {
  scope: 'openid email profile'
}), function (req, res) {
  res.redirect('/');
});

router.get('/callback', function (req, res, next) {
  passport.authenticate('auth0', function (err, user, info) {
    if (err) { return next(err); }
     if (!user) {
       return res.redirect('/login'); }
...

И связанные части app.js:

var passport = require('passport');
var Auth0Strategy = require('passport-auth0');

// Configure Passport to use Auth0
var strategy = new Auth0Strategy(
  {
    domain: process.env.AUTH0_DOMAIN,
    clientID: process.env.AUTH0_CLIENT_ID,
    clientSecret: process.env.AUTH0_CLIENT_SECRET,
    callbackURL:
      process.env.AUTH0_CALLBACK_URL
  },
  function (accessToken, refreshToken, extraParams, profile, done) {
    return done(null, profile);
  }
);

passport.serializeUser(function (user, done) {
  done(null, user);
});

passport.deserializeUser(function (user, done) {
  done(null, user);
});


passport.use(strategy);

app.use(passport.initialize());
app.use(passport.session());
...