retrofit2, okhttp3 и вот это все. Вопрос, как правильно поддерживать запрос токенов?
Пример:
Открывается активность, в которой отображается, допустим профиль пользователя. Само собой тут же идет rest запрос на сервер чтобы получить актуальные данные. И тут начинается самое веселое. Допустим токен протухает и мне нужно получить новый. Токен должен лежать в http header запроса. Добавлять я его туда буду через okhttp.Interceptor. Запрашивать в случаи протухания думал там же. В случаи успешного получения токена вроде все просто. А в случаи ошибки? Как выбросить ошибку из interceptor'а? То что я хочу сделать это вообще нормально?
https://github.com/AndroidArchitecture/AndroidArchitectureBook/blob/master/cases/auth/Auth_article.md
если у тебя рх, то он словит ошибку
Обычно, (еще со времён AccountManager+SyncAdapter) флоу был следующий: -если аккаунта нет - логинимся, получаем токен, сохраняем юзер-пассворд, выкачиваем initial-data, -если есть - берем в лок базе данные по текущ аккаунту -если в процессе одного из запросов протух токен - обновляем(юзер-пассворд же хранится) - если не помогло - значит не валидный пассворд - уведомляшка с интентом на сонфирм-активити нового пассворда а апп как работал дальше так и работает оффлайн
Обсуждают сегодня