JWT access/refresh token Flow
Flow 정리
- 로그인 클릭
- 로그인 성공하면 API서버가 토큰을 반환
- 반환된 토큰을 저장하여 페이지를 이동하거나 사용자 인증이 필요한 요청을 수행할 때, 헤더에 토큰을 넣어보낸다.
- API 서버는 요청받은 message의 헤더에서 토큰을 찾아 승인된 사용자인지 확인한다.
토큰을 어디에 어떻게 저장할까?
- 참고하여 정리하면
refresh token은 local storage에 저장
하고, access token은 cookie에 저장
- 요청 헤더에는 access token을 넣어라
- access token이 만료됐다고 하면, refresh token을 가져와 새로운 token을 발급받는 요청을 하여 갱신
- 코드 적용
<로그인 요청>
- local storage에 refresh token 저장
- access token을 cookie에 저장
<로그아웃을 했을 때>
- cookie 삭제
- local storage 삭제
참고