J'utilise PassportJS et c'est Facebook-Stratégie pour authentifier les utilisateurs de mon site.Gérer les valeurs désélectionnées de Facebook via PassportJS
Tout va bien lorsque l'utilisateur ne désélectionne rien dans le pop-up Facebook.
Toutefois, si l'utilisateur désélectionne l'e-mail, je ne le récupérerai pas, ce qui est évidemment du ressort de l'utilisateur.
Ma question est - comment puis-je les diriger vers "ailleurs" en fonction des données que j'ai retentées?
passport.use(new FacebookStrategy({
clientID: config.facebook.appID,
clientSecret: config.facebook.appSecret,
callbackURL: config.facebook.callbackURL,
profileFields: ['displayName', 'picture.type(large)', 'emails', 'birthday', 'location']},
function(accessToken, refreshToken, profile, done){
var newUser = new userModel({
fullname : profile.displayName,
profilePic : profile.photos[0].value || '',
email : profile.emails[0].value || '',
birthday : profile._json.birthday || '',
location : profile._json.location.name || '',
});
newUser.save(function(err){
done(null, newUser);
});
);
}
je peux, bien sûr, faire une sorte de préprocesseur, mais je ne sais pas ce que je dois faire si les données ne sont pas valides. Par exemple, dites "E-mail" est un must. Comment vais-je dire à l'utilisateur: "Comme vous n'avez pas fourni le champ obligatoire du courrier électronique, remplissez-le", puis j'emmène l'utilisateur sur une page Paramètres du profil.
Mon URL de rappel sur l'application Facebook est:
http://localhost:3000/auth/facebook/callback
Et c'est la route NodeJS ci-dessous:
router.get('/auth/facebook/callback', passport.authenticate('facebook', {
successRedirect:'/wall',
failureRedirect:'/login'
}));
Toute entrée vous aidera.
Merci d'avance.
Exactement. Ma question est - comment puis-je "rediriger" l'utilisateur vers cette page avec le formulaire? Je vois seulement successRedirect et failureRedirect. Merci –
J'ai édité ma réponse, vérifiez-la. – Gousia
Salut mec. Je pense que je n'ai peut-être pas été clair. Ce que je vois ci-dessus est comment vérifier si les variables sont fournies ou non. Je ne vois pas comment la redirection va fonctionner. J'ai effectué la validation des données sur tout le site mais ce que je ne sais pas, c'est comment je peux acheminer l'utilisateur vers certaines pages en fonction des données fournies. J'espère que je suis clair maintenant. Merci –