J'ai une question concernant les cookies de session dans React.Utilisation de cookies de session dans React
Actuellement voici comment j'authentifie un utilisateur:
export function loginUser({ email, password }) {
return function(dispatch) {
axios.post(`${API_URL}/users/authenticate`, { email, password }, { withCredentials: true })
.then((response) => {
if (response.data.result_status == "success") {
localStorage.setItem("token", JSON.stringify(response.data.user))
dispatch({ type: AUTHENTICATE_USER });
browserHistory.push("/home");
})
}
})
.catch(() => {
dispatch(authError('Incorrect Login Info'));
});
}
}
J'envoyer le email
et password
à une URL. Si le response.data.result_status == "success"
, puis je définis les informations d'utilisateur (comme leur nom et adresse e-mail) à un jeton localStorage et j'appelle AUTHENTICATE_USER
qui définit un autre élément localStorage à true.
Depuis que j'utilise localStorage, les données persistent lorsque je recharge. Et tant que le localStorage authentifié n'est pas défini sur null, je reste sur le système. Cependant, maintenant nous voulons rester sur le système aussi longtemps que la session du cookie n'est pas expirée. Actuellement, je reste sur le système basé sur le jeton que j'ai défini pour le stockage local, pas le cookie.
Le backend n'utilise pas JWT, juste un cookie. Y at-il un moyen pour moi de vérifier si le cookie est toujours en session avec axios?
Vous ne pouvez pas vérifier la réponse des cookies dans XHR. Vous pouvez comparer les cookies avant et après la demande. – elmeister
@elmeister merci pour la réponse. Comment puis-je "vérifier" les cookies? Aurais-je besoin de le définir comme un jeton dans localStorage? – lost9123193
Je pense qu'il vaut mieux commencer par https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie – elmeister