@Renhor

Nuxt + Express. Как сделать аутентификацию?

Доброе утро! В этом вопросе я нуб, требуется помощь.

На Php все было легко, при регистрации записывал в БД к пользователю хеш и этот же хеш закидывал в куки. Когда юзер заходил на сайт, хеш сравнивался и если подходил - юзера автоматически логинило на сайт. Плюс легко было сделать проверку уровня доступа (юзер или админ), после доп. проверок просто добавлял в сессию уровень доступа. На нужных страницах - проверял уровень доступа.

Все это делалось в несколько строк кода.

Сейчас начал разрабатывать spa используя Nuxt + Express.
Еле-еле разобрался с Sequelize (и то, на начальном уровне, но для дальнейших шагов пока хватит. До этого орм не использовал).

Получается мне нужно сделать что-то подобное. В готовых решениях, коих я перелопатил за несколько дней достаточное количество, используется очень много РАЗНЫХ прикладных вещей - passport, разные стратегии к нему, express-session, bodyparser - запомнил те, которые встречаются чаще всего, вот я и запутался окончательно.

Спасите xD
  • Вопрос задан
  • 610 просмотров
Решения вопроса 1
Xuxicheta
@Xuxicheta
инженер
https://medium.com/devschacht/node-hero-chapter-8-...

passport - просто обертка, задающая единый интерфейс для авторизаций, которые выбираются как "стратегии". Если задан интерфейс, можно делать стратегии к нему в виде пакетов, которые и берут из npm. Для простой авторизации из БД достаточно local, только запрос нужно самому написать, как в мануале по ссылке выше.
express-session - пакетик, добавляющий куки клиенту, читающий его и помещающий соответствующую запись из бд в req.session
body-parser - парсит содержимое http-сообщения и если там json или скажем данные формы, то делает из этого объект и помещает в req.body. Не работает с multipart, для этого нужны другие пакеты.

На JWT особо не ведитесь, плюсов от него немного, нужно понимать где он пригодится, а где не очень. Хотя конечно знать как оно устроено надо.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@nvdfxx
Senior Pomidor developer
passport-jwt, околостандарт сейчас для spa вроде как
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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