Die Passport.js-Strategie, die ich versuche zu implementieren, ist die für den Facebook-Anbieter. Ich habe mit dem Lehrbuchbeispiel getestet (aus https://github.com/passport/express-4.x-facebook-example) und es scheint, dass die Weiterleitung nie aufgerufen wird.passww.js facebook authentification next not working
Die Redirect-Sequenz funktioniert gut, außer wenn der Benutzer angemeldet ist, leitet sie zur Homepage um, auch wenn Sie explizit eine andere URL in den Callback setzen.
So funktioniert alles außer der letzten Umleitung, die bei https://xx.com/testing enden sollte, was nie passiert.
NodeJS 6, Express- 4+, Pass 3.2
Was nicht in Ordnung ist?
Strategie
passport.use(new FacebookStrategy({
clientID: xx,
clientSecret: 'xx',
callbackURL: 'https://xx.com/auth/facebook/callback/',
profileFields: ['id', 'email', 'name', 'displayName']
},
function (accessToken, refreshToken, profile, done) {
return done(null, profile)
}
))
Strecke
router.get('/auth/facebook', passport.authenticate('facebook', {scope: ['public_profile', 'email']}))
router.get('/auth/facebook/callback',
passport.authenticate('facebook', { failureRedirect: '/login' }),
function(req, res) {
// never gets called
console.log('I don't get called!!!')
res.redirect('/testing')
})
Das funktioniert wie erwartet, aber ich möchte Code ausführen, dann umleiten. – Astuanax