Модифицируйте и обновите токен RxJava2 и повторите попытку - PullRequest
0 голосов
/ 01 мая 2018

У меня есть конечная точка входа в систему, с помощью которой я получаю authToken и refreshToken. Срок действия первого истекает через час, поэтому я должен использовать второй, чтобы обновить его и продолжить выполнение приложения.

Теперь мое приложение заполнено повсеместно модернизированными звонками, и я потенциально могу получить 401 в любой момент, так как я могу сделать так, чтобы каждый раз, когда я получал 401 токен обновления, выдается, а потом исходный запрос повторился?

Это моя обновленная подпись:

 @POST("/auth/actions/refresh")
    fun refreshToken(@Body tokenRefresh: TokenRefresh): Single<LoginResponse>

Я думал о создании базового класса репозитория с методом withAuth(), который принимает любой Observable / Single / Flowable, а затем применяет эту логику, но я не могу найти способ ее реализовать.

Увидел кучу реализаций, но ни одна из них не соответствует моим потребностям ... может кто-нибудь подтолкнуть меня в правильном направлении?

Это самый близкий , который я обнаружил, однако, похоже, есть некоторые ошибки при отображении плоских объектов

...