Size: a a a

2021 April 22

YN

Y N in MobDev Group
Добрый день, коллеги!
Кто знает как лучше делать Рефреш токена авторизации?
То есть с бэка приходит два токена access and refresh
Соответственно access имеет срок жизни
Когда пользователь ловит ошибку 401, значит токен устарел и его надо обновить так, чтобы юзер это не заметил и запрос не упал
Всем большое спасибо
источник

BS

Begali Sydykov in MobDev Group
okhttp interceptor, authenticator
источник

YN

Y N in MobDev Group
да через intercepter установил токен глобально для всех запросов
далее не могу понять что делать
может знаете хорошие статьи, просто в интернете такие замудренные решение на Rx
источник

KM

Kanybek Mo in MobDev Group
А есть время жизни токена? Обычно же указывается
источник

J

J.S in MobDev Group
Надо через okhttp отлавливать ошибки и все
источник

J

J.S in MobDev Group
Не знаю , по мне запускать счётчик зашкварно
источник

BS

Begali Sydykov in MobDev Group
не надо счетчика. перед отправлением запроса проверяешь устарел ли токен. если устарел обновляешь
источник

J

J.S in MobDev Group
Этот кейс не работает для FCM
источник

J

J.S in MobDev Group
Чтобы узнать что токен устарел (вы говорите перед отправкой токена) то надо сохранять время получения токена и т.д либо можно просто отловить ошибку и если ошибка поймана из за токена то обновлять и переотправить запрос... Не знаю какой способ хороший
источник

YN

Y N in MobDev Group
пока на таком этапе дальше этого не могу
источник

YN

Y N in MobDev Group
да
15 минут
источник

BS

Begali Sydykov in MobDev Group
https://blog.coinbase.com/okhttp-oauth-token-refreshes-b598f55dd3b2 здесь через authenticator обновляется токен
источник

YN

Y N in MobDev Group
Всем большое спасибо, как получится напишу)
источник

d

dstn in MobDev Group
просто отправляешь запрос с токеном, если тот устарел, отправляешь запрос с refresh, получаешь новый токен и запрос с обновленным токеном.
источник

М.

Максим . in MobDev Group
Всем привет подскажите как я могу в @POST("login?token=oYyxhIFgJjAb") вставить страку что то вроде  @POST("login?token=oYyxhIFgJjAb" + string)? У меня не получается код жалуется и отдает такую ошибку An annotation argument must be a compile-time constan. Как мене добавить старку что бы код не ругался?
источник

BB

Bolot Bekbolotov in MobDev Group
@POST("login?token=oYyxhIFgJjAb{str}")
fun func(@Path(value="str") string)
источник

K

Kasem in MobDev Group
Надо определить способ отправки аргумента
источник

K

Kasem in MobDev Group
Path, Querry, Body
источник

BS

Begali Sydykov in MobDev Group
почему добавляешь  переменнyю строку к токену?
источник

YN

Y N in MobDev Group
я попробовал - он нормально обновляет токен
только вот проблема в том, что часть запросов не проходят 😅😅😅
источник