🐿️ Issue
구현 배경
기존: API 호출 시 Access Token 만료 → Refresh Token 요청 → 실패 시 로그인 화면 이동
문제: Refresh Token이 만료되었을 경우, 사용자 입장에서는 갑자기 로그인 화면으로 튕기는 느낌
개선 목표: 앱 실행 시점에서 미리 토큰 상태를 점검 및 갱신하여, 사용자 경험을 자연스럽게 유지
구현 방법
- 앱 실행 시 UserDefaults에 저장된 마지막 토큰 갱신 시각 확인
Access Token (3시간) 남은 시간이 30분 미만일 경우 Refresh Token API 호출
Access Token 만료되었을 경우 (3시간 초과) Refresh Token API 호출
결과
- <Access token 남은 시간 30분 이상>: 바로 앱 진입 (자동로그인)
- <Access token 남은 시간 30분 미만 or 만료>: Refresh Token -> 앱 진입 (자동로그인)
- <Refresh Token 만료>: 로그인 -> 앱 진입