|
WebFlux начало работы
|
|||
---|---|---|---|
#18+
Разбираюсь с WebFlux возникли трудности когда надо обрабатывать различные условия. Подскажите направление, правильно ли делаю 1) Проверка на существование. Вообще случае existsByEmail можно заменить на findByEmail но меня интересует работа с Mono<Boolean> Правильно ли сделана логика. Проверка email в БД, если такого email нет, создаем default admin Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
2) Как правильно работать с различными Mono в головном. Мне приходит refreshToken - Начинаю парсить его и проверять дату окончания срока (библиотека Nimbus JOSEl) в конце у меня объект SignedJWT. Но далее для работы мне опять нужен токен, чтоб найти его в БД и обновить Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 18:04 |
|
WebFlux начало работы
|
|||
---|---|---|---|
#18+
-=Koba=-, что-то вы странное делаете: - писать в базу в afterPropertiesSet() - это так себе затея, тут в лиснере ловить ContextStartedEvent куда лучше - делать обновление токенов асинхронным - это чет тоже так себе затея, у вас же клиент без обновленного токена работать нормально не может, а вы достаточно короткую операцию хотите запихнуть в общую очередь обработки ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 18:43 |
|
WebFlux начало работы
|
|||
---|---|---|---|
#18+
-=Koba=-, Мне тоже кажется, что работа с аутентификацией делается Синхронно. Значит WebFlux идет лесом. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2020, 20:57 |
|
WebFlux начало работы
|
|||
---|---|---|---|
#18+
У меня еще даже проблема не в коде А не могли б подробно объяснить нюанс с токеном и асинхроностью ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2020, 08:26 |
|
WebFlux начало работы
|
|||
---|---|---|---|
#18+
-=Koba=-, Твой код из головы или на основе примера? Ссылка? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2020, 11:02 |
|
WebFlux начало работы
|
|||
---|---|---|---|
#18+
Это мой код.. Просто есть вопросы Как работь с if else then Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Если пользователь найден ничего не делать, если не найден создать нового В первом примере Mono<Boolean> - findByEmai Во втором примере Mono<User> - findById То есть если какое-то условие не срабатывает просто выйти, а не гнать всю цепочку до конца ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2020, 11:14 |
|
|
start [/forum/topic.php?fid=59&msg=39932793&tid=2120889]: |
0ms |
get settings: |
6ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
48ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
137ms |
get tp. blocked users: |
0ms |
others: | 9ms |
total: | 211ms |
0 / 0 |