소셜 로그인 로직
- 카카오, 애플로그인을 통해 받은 id로 회원 조회
- id가 있다면 홈 화면, 없다면 회원가입 화면
- 로그인을 하면 백엔드 서버에서 토큰과 리프레쉬 토큰을 전달
- 토큰은 메모리 저장, 리프레쉬 토큰은 핸드폰 스토리지에 저장
- 토큰의 역할: api 호출 할때 본인 확인을 위한 고유값
- 리프레쉬 토큰의 역할 : 토큰이 만료 되었을때 토큰을 다시 가져 올수 있는 값
- api 요청을 할때 토큰 만료(403)이 나오면 리프레쉬 토큰으로 토큰 재요청
- 리프레쉬 토큰으로 새로운 토큰을 받으면(200) 기존 토큰 갱신해서 api 재요청
- 리프레쉬 토큰으로 토큰을 받지 못하면(403) 토큰 만료로 보고 로그인 페이지 이동
- 리프레쉬 토큰은 스토리지에 저장해놓고 앱을 시작할때 토큰을 요청한다.(자동 로그인 기능)