Регистрация на Express.js

Регистрация на Express.js с использованием RestAPI
Метки: / / /

В этой статье мы разберём как в node.js express.js создаётся регистрация, это очень полезная статья, особенно для новичков в программирование и Express.js.

Также, мы здесь будем работать с библиотекой Mongoose.js, и если вы её не знаете, то почитайте статью «Express.js работа с MongoDB».

Регистрация на Express.js:

Разберём как сделать регистрацию, но для начала создадим схему для управления базой данных, в нашем случае MongoDB. Заходим в папку «model»  если её нет, то создаём, и делаем там файл «User.js». Вот что в нём пишем:

В начале мы подключаем класс Schema, для создания схемы модели и функцию model, которая создаёт объект нашей модели, благодаря ему мы и будем работать с ней.

После переходим в папку «controller» и в ней создаём файл «auth.js», там же создаём класс authController:

Также мы тут подключаем библиотеку bcrypt для хеширования пароля и модель User, ну и создаём класс.

Примечание:

Если вам что-то не понятно, то посмотрите наш учебник по Express.js.

Теперь создаём метод который будет у нас отвечать за регистрацию:

Во-первых мы делаем метод асинхронным, это нужно для работы с БД, во вторых мы начинаем отлавливать ошибки с помощью конструкции try catch.

Внутри try мы берём данные из req.body, а конкретно имя пользователя, email и пароля, и первым делом проверяем, есть ли пользователь с таим Email, для этого используем метод модели findOne(), который находит элементы в БД, если есть, то возвращаем ошибку, если нет то продолжаем работу.

Дальше создаём переменную в которой будем хранить хеш от пароля, для этого в него вернём значение из метода bcrypt.hashSync(), в качестве параметров передаём пароль, который нужно хешировать и сложность хеширования, тут рекомендую. слишком большое число не ставить, иначе будет очень долго хешировать.

Потом создаём объект модели, тем самым мы создали нового пользователя, при создание передаём объект с нашими свойствами, это имя, email и хеш пароля, сохраняем это.

В catch мы пишем вывод ошибок в консоль.

Примечание:

Для регистрации мы используем принцип RestAPI, то для отправки данных вы будите должны использовать AJAX.

После того как вы закончили с методом заходим в папку «router», и создаём файл «auth.js», там мы будем хранить пути для отправки или получения данных, вот что мы там пишем:

Тут мы подключаем Router, для правления путями и создаём объект router, и также создаём проверки POST запросов, если у нас есть такой запрос по пути «/registration», то мы запускаем наш метод для регистрации, экспортируем объект.

Последние переходим в «index.js» в корневой папке и добавляем туда наш роутинг:

Тут мы подключаем Express и cors, второй нам нужен для работы с back-end с помощью ReasAPI, чтобы её скачать пишем эту npm команду:

Ну и также подключаем Mongoose и маршрутизатор auth, создаём приложение, для встраивания роутинга используем Middleware, создаём функцию start, в которая будет запускать приложение и взываем её.

Теперь вы должны будите сделать клиентскую часть сайта, но это не об этом, ту мы рассматриваем только back-end, но я скажу, куда отправлять данные, вам надо будет по пути «http://exaple.com/auth/registration», это всё.

Вывод:

В этой статье вы узнали как создаться регистрация на Express.js, в следующей статье мы разберём как сделать авторизацию на Express, поэтому подписываетесь на соц-сети, чтобы не пропустить.

Подписываетесь на соц-сети:

Оценка:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд
(Пока оценок нет)
Загрузка...

Также рекомендую:

Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии