Size: a a a

Clojure — русскоговорящее сообщество

2019 October 01

VL

Vlad Lisovsky in Clojure — русскоговорящее сообщество
Ясно, спасибо.
Это реально проблема если там придумать что access token живёт 20 минут (банк, секьюрити), то можно потом долго костыли строить
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
просто бывает на один клик 5 запросов уходит, один прошел, а другие нет
источник

VL

Vlad Lisovsky in Clojure — русскоговорящее сообщество
Тут возникает проблема координации стейта, не?
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
можно костылик влепить, что если запрос не прошел из-за токена, то возможно запрос до него уже установил новый токен и тупо повторить
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Artem
@achikin расскажите пожалуйста как вы это чинили 🙃
Надо запоминать запрос, который ты хочешь отправить, потом отправляешь этот запрос. Если в ответ пришло что токен протух - шлешь рефреш и повторяешь запрос
источник

VL

Vlad Lisovsky in Clojure — русскоговорящее сообщество
Давайте я включа Рича хики на секунду: вы придумали себе проблему  со стейтом и теперь ее решаете ;)
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
ну собстна как я и говорил, да
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
Рич, не мешай нам пилить формочки к базе
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Ну там еще есть нюанс - когда много запросов идет один за другим, чтобы все не начали слать рефреш - где-то запомнить что ты уже рефреш послал
источник

MV

Max Vasiliev in Clojure — русскоговорящее сообщество
но тогда, значит, надо какую-то очередь делать и управлять ей
источник

MV

Max Vasiliev in Clojure — русскоговорящее сообщество
чтобы запрос на новый токен блочил всё
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Max Vasiliev
но тогда, значит, надо какую-то очередь делать и управлять ей
В конечном итоге задача к этому сводится да
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Либо очередь либо ретрай на каждый запрос
источник

AR

Andrew Rudenko in Clojure — русскоговорящее сообщество
Vlad Lisovsky
А можно кратко зачем refresh токен??
чтобы усложнить себе жизнь )
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Просто перед посылкой проверяем в каком состоянии токен сейчас - если его нет - говорим что надо залогиниться и не шлем ничего. Если рефреш в процессе - ретрай через ну не знаю 2 секунды, если токен стух - послать рефреш
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Тогда каждый запрос как бы своей жизнью живет и очередь можно не городить
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
если апишка работет только для веба, то вполне можно обойтись кукой
источник

AR

Andrew Rudenko in Clojure — русскоговорящее сообщество
так, пажите, давайте определим что происходит:

1. есть свой сервер, у него есть апишечка
2. есть свой клиент, он ходит к своему серверу

в каком месте и для чего тут появляется oauth и его токены?
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
секьюрной, только HTTPS и тд
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Andrew Rudenko
так, пажите, давайте определим что происходит:

1. есть свой сервер, у него есть апишечка
2. есть свой клиент, он ходит к своему серверу

в каком месте и для чего тут появляется oauth и его токены?
Это не обязательно oauth. Может быть и jwt
источник