Паспорт не перенаправить на «failRedirect» при сбое с Facebook - PullRequest
0 голосов
/ 03 октября 2018

Я использую паспорт для аутентификации пользователя через Facebook.

successRedirect отлично работает [я перенаправляю на http://localhost:3000/success#_=_], но failureRedirect нет, я получаю это:

FacebookAuthorizationError: Login Error: There is an error in logging you into this application. Please try again later.
[I'm getting this in my browser-> http://localhost:3000/auth/facebook/callback?error_code=1349003&error_message=Login+Error%3A+There+is+an+error+in+logging+you+into+this+application.+Please+try+again+later.#_=_

Это мои настройки:

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

passport.serializeUser(function (user, done) {
    console.log(user);
    done(null, 'this is the user');
})

passport.deserializeUser(function (id, done) {
    console.log(id);
    done(err, {message: 'this is the user'});
});

router.get('/auth/facebook', passport.authenticate('facebook'));

router.get(
    '/auth/facebook/callback',
    passport.authenticate('facebook',
        {
            successRedirect: '/success',
            failureRedirect: '/login',
        }
    ),
);

const FacebookStrategy = require('passport-facebook').Strategy;

const facebookStrategy = new FacebookStrategy({
    clientID: staretegy.clientId,
    clientSecret: staretegy.clientSecret,
    callbackURL: staretegy.callbackURL,
    profileFields: [
        'id',
        'first_name',
        'middle_name',
        'last_name',
    ],
}, (accessToken, refreshToken, profile, done) => {
    done(null, {user: profile});
});

passport.use(facebookStrategy);

Когда я читал в документах, я ожидал перенаправить на банку /login.

/loginбыть доступным для браузера.(Я также пытался указать полный путь URL: failureRedirect: http://localhost:3000/login, но он не будет работать, аналогичный URL работает с successRedirect.

1 Ответ

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

Кажется, это открытый выпуск и основной репозиторий практически не поддерживается.Но вы можете попробовать использовать эту вилку .

...