Skip to content

API обеспечивающий систему регистрации, входа, редактирования и получения данных о профиле.

Notifications You must be signed in to change notification settings

nick6850/node-express-mysql-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-express-mysql-api

В данном проекте реализован API обеспечивающий безопасную систему регистрации, входа, редактирования профиля и получения данных. Для использования API создан интуитивный UI (html + css + javascript). Также можно использовывать Postman или Insomnia.

Ключевые функции:

  1. Регистрация пользователей: Пользователи могут зарегистрироваться, указав имя, электронную почту, пароль, пол и фотографию профиля. Поддерживается загрузка файлов для фотографий профиля с помощью библиотеки Multer (до 10 мб, расширения: jpg, png).

  2. Редактирование профиля: Аутентифицированные пользователи могут редактировать свои профили, указав свой идентификатор пользователя, новое имя / фамилию. Администратор имеет более широкий доступ, позволяющий редактировать профиль любого пользователя.

  3. Вход пользователей в систему: Безопасная аутентификация пользователей осуществляется с помощью JSON Web Tokens (JWT). Пользователи могут войти в систему, указав свою электронную почту и пароль, и получить JWT для последующих запросов, который будет храниться в cookie.

  4. Получение данных пользователя по идентификатору: Пользователи могут получить данные своего профиля, указав свой ID. Администратор имеет более широкий доступ, позволяющий им получать данные любого пользователя.

  5. Получить все профили с пагинацией: Эксклюзивная для администраторов функция получения всех профилей пользователей с пагинацией (10 профилей на страницу). Профили сортируются по дате регистрации.

Используемые технологии:

  1. Бэкенд: Node.js и Express.
  2. База данных: MySQL, Sequelize (ORM).
  3. Middleware: Multer для загрузки файлов.
  4. Аутентификация: JSON Web Tokens (JWT), cookie-parser.

Использование

Для использования проекта необходимо:

  1. Клонировать репозиторий удобным способом.
  2. Установить зависимости проекта (npm install).
  3. Установить базу данных MySQL (находится в корне репозитория).
  4. Изменить переменные окружения в файле .env в зависимости от конфигурации вашей базы данных.
  5. Запустить сервер Node.js (npm start)

ВАЖНО.

  • Файл .env находится в репозитории. Перед деплоем необходимо занести его в файл .gitignore.
  • Для получения доступа к профайлу админа, введите email: [email protected], пароль "Admin123,"

About

API обеспечивающий систему регистрации, входа, редактирования и получения данных о профиле.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published