параллельных запросах на сервер?
Скажем у нас запрашиваются два запроса и оба приходят с 401м ответом. Нам нужно в этот момент отправить запрос, вернуть новый токен и переотправить эти запросы с новым токеном.
По идее словить 401й код можно в interceptor, но как переотправить несколько запросов с новым токеном? Может у кого-то есть примеры реализации.
отлавливаешь 401 потом достаешь токен со своего запроса, следом идет блок синхронизации, в нем достаешь токен из хранилища и сравниваешь с тем что получил до синхронизации, если разные, значит кто-то уже обновил и повторяешь с новым токеном, если одинаковые то обновляешь его
Главное чтобы уровень синхронизации был верный,чтобы репозиторий с токеном был правильный.А так, спасибо за пример.
Для этого существует аутентификатор, а интерсептор для этого не предназначен
Если испольуете rxJava - ловите код ошибки, кидаете специально заготовленное исключение и в операторе repeat ловите его. В нём же задаётся кол-во попыток перезапроса.
Обсуждают сегодня