私はReactのセッションクッキーに関する質問があります。セッションクッキーを使用する
は現在、これは私がユーザを認証する方法である:
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'));
});
}
}
私はURLにemail
とpassword
を送信します。 response.data.result_status == "success"
の場合、ユーザー情報(名前や電子メールのようなもの)をlocalStorageトークンに設定し、別のlocalStorageアイテムをtrueに設定するAUTHENTICATE_USER
を呼び出します。
私はlocalStorageを使用しているので、データをリロードするとデータが保持されます。認証されたlocalStorageがnullに設定されていない限り、私はシステムにとどまります。
ただし、Cookieのセッションが有効期限切れになっていないため、システムに長期間滞在したいと考えています。現在、私はローカルのストレージに設定したトークンに基づいてシステムに留まり、クッキーは保存しません。
バックエンドはJWTを使用せず、クッキーだけです。クッキーがまだ腋窩にあるのかどうかを確認する方法はありますか?
あなたはXHRのレスポンスのクッキーをチェックすることはできません。リクエストが行われた前後にクッキーを比較することができます。 – elmeister
@elmeister返信ありがとうございます。クッキーを "チェック"するにはどうすればいいですか? localStorageのトークンとして設定する必要がありますか? – lost9123193
あなたはhttps://developer.mozilla.org/en-US/docs/Web/API/Document/cookieから始める方がよいと思います – elmeister