Je souhaite utiliser passport-github ou facebook login avec jeton jwt, sans utiliser les sessions de sauvegarde sur le serveur. Mais nous avons deux demandes de frontend:comment intégrer passport-facebook et jwt sans session?
app.get('/auth/facebook',
passport.authenticate('facebook'));
app.get('/auth/facebook/callback',
passport.authenticate('facebook', { failureRedirect: '/login' }),
function(req, res) {
// Successful authentication, redirect home.
res.redirect('/');
});
comment gérer les codes frontend?
Dans le cas normal, nous avons une seule demande
axios.post(`${API_URL}/auth/login`, { email, password })
.then(response => {
cookie.save('token', response.data.token, { path: '/' });
dispatch({ type: AUTH_USER });
window.location.href = CLIENT_ROOT_URL + '/dashboard';
})
.catch((error) => {
errorHandler(dispatch, error.response, AUTH_ERROR)
});
}
afin que nous puissions sauver le jeton sur place. mais pour le passeport-facebook, nous avons deux requêtes ('/ auth/facebook' et '/ auth/facebook/callback'). Alors, comment sauvegarder le jeton localement?
Comment envoyer un jeton jwt au client? –