La redirection vers facebook.com ne se produit pas une fois que je clique sur le lien ci-dessous:authentification à l'aide Passeport pour JS facebook
<a href="/auth/facebook" class="btn btn-primary"><span class="fa fa-facebook"> Facebook</span> </a>
itinéraires sont les suivantes:
//Facebook
app.get('/auth/facebook', passport.authenticate('facebook', { scope : ['email'] }));
app.get('/auth/facebook/callback',
passport.authenticate('facebook', { successRedirect: '/profile',
failureRedirect: '/' }));
Le code de la stratégie est aussi suit:
var FacebookStrategy = require('passport-facebook').Strategy;
passport.use(new FacebookStrategy({
clientID: configAuth.facebookAuth.clientID,
clientSecret: configAuth.facebookAuth.clientsecret,
profileFields: ['id', 'displayName', 'email'],
callbackURL: configAuth.facebookAuth.callbackURL
},
function(accessToken, refreshToken, profile, done) {
process.nextTick(function() {
User.findOne({
'facebook.id': profile.id
}, function(err, user) {
if (err)
return done(err);
if (user)
return done(null, user);
else {
var newUser = new User();
newUser.facebook.id = profile.id;
newUser.facebook.token = accessToken;
newUser.facebook.name = profile.name.givenName + ' ' + profile.name.familyName;
newUser.facebook.email = profile.email[0].value;
newUser.save(function(err) {
if (err)
throw err;
else
return done(null, newUser);
})
}
});
});
}
));
J'ai mis à jour les secrets dans mon fichier auth.js. J'ai également mis à jour l'URL du site: http://localhost:8080 et a ajouté appdomain: localhost dans developers.facebook.com
Chaque fois que je clique sur le lien HTML le contrôle reste sur la même page et la page Web http://localhost:8080/auth/facebook ne peut pas être trouvée est affichée
Merci à @Gousia de répondre. Mais je suppose que [http: // localhost: 8080 /] devrait être l'URL du site. Et [http: // localhost: 8080/auth/facebook/callback] devrait être l'URL de rappel. Bien que je l'ai changé, comme vous avez suggéré toujours pas de succès. Le problème est une fois que je clique sur FB Link, la page se charge juste, puis expire après quelques secondes en disant http: // localhost: 8080/auth/facebook/ne pouvait pas être connecté – ami27
Essayez en ajoutant les certificats SSL, je pense ça marcherait – Gousia