Антон Швец, не, тут просто возвращается объект пользователя в ответ на запрос. Проверка авторизованности происходит ещё до этого. Во всяком случае здравый смысл говорит так.
Rustam Azizov, неа, до запроса тут еще не дошли.
тут jwt помогает пройти аутентификацию, но за данными юзера все равно лезут в базу и передают их дальше в запрос. Каждый раз.
По идее токен должен так же содержать данные для авторизации, а обращение к бд будет только в фазе создания (или рефреша) токена, иначе зачем вообще токен.
Сервис может вообще ничего не знать про существование базы юзеров.
Видите ли, есть два основных типа аутентификации и авторизации юзера, криптографический (распознавание отпечатка) и реестровый (ищем запись сессии), нет смысла их смешивать.
Антон Швец, это мне всё знакомо, но да, это по всей видимости только этап проверки авторизованности пользователя и логика тут с проверкой базы данных противоречит самому назначению токенов. Странно, что это в официальной документации такого популярного решения как passport.js Хотя я уже такое видел на одном из проектов. Там был метод-помощник, который тащил пользователя каждый раз из базы для дальнейшего использования в контроллерах. Это конечно оверкил. Далеко не всегда нужен сам объект. Чаще достаточно айди, который итак в токене прописан.
Rustam Azizov, коллбэк, передаваемый в стратегию выполняется каждый раз при passport.authenticate.
И такая ерунда с запросом к бд довольно часто встречается, видимо из этой доки и дерут. Не говоря уж о том, что jwt вообще зачастую просто не нужен.