You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
에뮬레이터가 아닌 실 기기로 오랜만에 개발을 헀는데 메인화면에서 401오류가 계속 나더라고요. 이유를 찾아보니
val accessToken = runBlocking { dataStoreRepository.getStringValue(ACCESS_TOKEN).first() }
if (accessToken.isNotEmpty()) {
// 홈 화면 이동
} else {
// 로그인 화면 이동
}
기기 내부의 accessToken유무만으로 홈화면으로 이동시키고 있어서 만료된 엑세스 토큰을 가지고 계속 요청해서 이런 일이 발생한것 같습니다 :(
해당 로직을 긴급하게나마 다음과 같이 바꿨는데요
val refreshToken =
withContext(ioDispatcher) { dataStoreRepository.getStringValue(REFRESH_TOKEN).first() }
Log.i("[REFRESH_TOKEN] : ", refreshToken)
if (refreshToken.isNotEmpty()) {
refreshToken(refreshToken)
} else {
naviagateToLogin()
}
앱 진입 시 초기 스플래쉬 내부에서 기기 내부의 리프레쉬 토큰을 통해 재 발급 받은 후 앱에 들어가는 방식으로 수정하였습니다. 런웨이도 이와 비슷한 방식으로 진행하고 있어서 이런 방식은 어떨까 싶습니다.(cc. @DongChyeon )
런웨이의 경우는 refresh토큰을 통해 accessToken, refreshToken 둘 다 재 발급 받는데 저희 API에서는 POST : /refresh 에서 accessToken밖에 재발급 해주지 않는 것 같아요.
내부적으로 리프레쉬 토큰이 연장되거나 그런게 아니면 리프레쉬토큰도 같이 재발급 해주시면 이것도 프론트에서 저장해두고 두고두고 사용하겠습니다. (cc. @imenuuu )
The text was updated successfully, but these errors were encountered:
안녕하세요 동천
에뮬레이터가 아닌 실 기기로 오랜만에 개발을 헀는데 메인화면에서 401오류가 계속 나더라고요. 이유를 찾아보니
기기 내부의
accessToken
유무만으로 홈화면으로 이동시키고 있어서 만료된 엑세스 토큰을 가지고 계속 요청해서 이런 일이 발생한것 같습니다 :(해당 로직을 긴급하게나마 다음과 같이 바꿨는데요
앱 진입 시 초기 스플래쉬 내부에서 기기 내부의 리프레쉬 토큰을 통해 재 발급 받은 후 앱에 들어가는 방식으로 수정하였습니다. 런웨이도 이와 비슷한 방식으로 진행하고 있어서 이런 방식은 어떨까 싶습니다.(cc. @DongChyeon )
런웨이의 경우는
refresh
토큰을 통해accessToken
,refreshToken
둘 다 재 발급 받는데 저희 API에서는POST : /refresh
에서accessToken
밖에 재발급 해주지 않는 것 같아요.내부적으로 리프레쉬 토큰이 연장되거나 그런게 아니면 리프레쉬토큰도 같이 재발급 해주시면 이것도 프론트에서 저장해두고 두고두고 사용하겠습니다. (cc. @imenuuu )
The text was updated successfully, but these errors were encountered: