Нужно вызвать API для обновления токена в Android MVVM с помощью модернизации, где написать логику? - PullRequest
0 голосов
/ 11 ноября 2019

Во время входа в систему мы получаем токен авторизации и токен обновления, токен авторизации присоединяется со всеми API в заголовке, но через некоторое время токен авторизации истекает, и мы получим 401 , чтобы обновитьнам нужно вызвать API с токеном обновления, который мы получаем во время входа в систему, в ответ мы получим новый токен авторизации и токен обновления, проблема в том, где перехватить 401 и написать в одна точка для вызова API токена обновления и повторно отправить предыдущий отказавший API, мы не можем вызвать API в перехватчике.

1 Ответ

0 голосов
/ 11 ноября 2019

Okhttp (который выступает в качестве http-слоя для модернизации) имеет механизм для выполнения именно этого. Взгляните на https://square.github.io/okhttp/4.x/okhttp/okhttp3/-authenticator/

. Вы предоставляете Аутентификатор своему сборщику Okhttp во время установки, а затем он отвечает на 401 сообщение об ошибке для получения токена обновления.

...