
HTTP의 특성
- 비연결성 : 클라이언트와 서버가 연결을 맺고 응답을 마치면, 맺었던 연결을 끊는것.
- 무상태 : 비연결성으로 인해 서버는 클라이언트를 식별할수 없는것.
=> 상태를 저장해주는 무언가가 필요함.
cookie
- 문자열만 저장가능
- 키와 벨류형태
- 유효기한 설정가능
- 사이드당 20개
cookie의 처리순서

JWT token 사용이유
웹에서는 쿠키와 세션이있지만, 앱에서는 없기때문!!!!!
토큰기반 인증 시스템 : 클라이언트가 서버에 접속을 하면 인증되었다는 의미로 '토큰'을 부여한다.
token의 종류
- Access Token : 유효기한이 짧은 인증 토큰
- Refresh Token : Access Token이 유효기한이 다되서 만료됬을때 , Refresh Token이 있다면 Access Token을 발급해줌.
=> token 탈취시 위험하기때문에, 클라이언트에서는 Access Token으로만 요청을 보내고 요청시 탈취당하거나 유효기한이 만료되면 Refresh Token으로 재발급 받는 형태로 진행
=> Access Token이 요청하다가 탈취당하더라도 유효기한이 짧고, Refresh Token은 스토리지에 따로 저장함
=> 혹여나 Refresh Token도 탈취당한다면 ,서버에서는 Refresh Token을 제거하는 로직을 생성하고있기때문에 제거할 수 있음.
token 처리순서

- 클라이언트의 정보입력
- 서버는 db에서 확인후 일치한다면 token (Access, Refresh) 발급
- 클라이언트는 Access token으로만 인증처리


- 새로고침시 Token State가 없어지기때문에, local storeage에 저장하고 app 실행시
해당값을 확인하여 있으면 로그인처리, 아니면 로그인화면으로 Redirect