Задать вопрос

Как подружить next-auth и back-end?

Всем привет, возник такой вот вопрос, как сделать правильно авторизацию на NextJS и отправлять запросы на Бэк?
Допустим, пользователь авторизировался через google, вот пришла ему сессия из useSession, на фронте мы получили все что надо. А как потом этого пользователя сохранить в БД на бэке? Как потом делать запрос на получение постов пользователя? Там же вроде access и refresh не приходит, вот я авторизировался, получил в data имя пользователя и все остальное. А что потом с бэком делать, что ему отдавать, какие данные что бы он понял, что и кого мне нужно отдать?
  • Вопрос задан
  • 1245 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
@StAl15
ух, вообще есть такой вариант (рассмотрим мир в котором вы пользуетесь такой ORM как Prisma).
- ставите Prisma Adapter к next auth
- сетите юзера в базу с помощью next auth и адаптера призмы (в схеме укажете ссылку для БД которую используете для хранения юзеров)
- декодируете токен юзера при каждом запросе на бек используя секретное слово, которое у вас хранится в env на стороне сервера (декодировать токен можно либо переопределив свою функцию кодирования токена https://next-auth.js.org/configuration/nextjs#cust...) либо залить на Express/Nest приложение next auth ради его функции декодирования токена decode :)

Еще можно реализовать каждую стратегию авторизации на беке, а в next auth переопределить роуты внутри провайдера на ваш бекенд, но это муторно.

Пока других способов как это сделать более грамотно, я не увидел
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы