До конца срока действия токена - PullRequest
0 голосов
/ 16 октября 2018

Сейчас я использую Retrofit для подбора данных с сервера.проблема в том, что мне нужно вызывать API для получения нового токена каждые 1 час, и до сих пор я запускаю фоновую службу для получения нового токена до истечения 1 часа, и на всякий случай, если ответ API не удается из-за истечения срока действия токена, я вызываю токен API, затем снова вспомните метод.

Мой вопрос: есть ли встроенный способ модернизации для обработки истечения токена?или что-нибудь подобное.

Ответы [ 2 ]

0 голосов
/ 16 октября 2018

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

https://futurestud.io/tutorials/retrofit-2-catch-server-errors-globally-with-response-interceptor

Глобальный обработчик ошибок: Перехватчик OkHttp

0 голосов
/ 16 октября 2018

Модернизация сделана, чтобы помочь вам обрабатывать запросы, которые вам нужны.Это не обрабатывает истечение токена.Это означает, что вам нужно справиться с этим самостоятельно.Например, при обработке вашего запроса вы можете проверить наличие ошибки 401 Несанкционировано (обычно это ошибка, которую сервер отправляет после истечения срока действия токена).Когда это произойдет, удерживайте неудавшийся запрос и отправьте другой запрос на новый токен.Когда новый запрос будет успешно завершен, ваш токен будет обновлен, и вы можете повторить первоначальный неудачный запрос с вновь полученным токеном.

...