Репозиторий для API Movies Explorer - сервис, в котором можно найти фильмы по запросу и сохранить в личном кабинете. Проект был реализован в рамках дипломной работы на платформе Яндекс.Практикум.
Стек технологий:
- JavaScript;
- NodeJS;
- Express.js;
- MongoDB;
- Postman.
Фукционал:
- Все роуты, кроме аутентификации и авторизации, защищены авторизацией.
- Настроено логгирование (запросы и ответы записываются в request.log, ошибки записываются в error.log).
- Данные, которые приходят в теле и параметрах запроса, валидируются.
- Ошибки обрабатываются централизованным обработчиком.
- Для ошибок API созданы классы, расширяющие конструктор Error.
- Реализовано бережное хранение пароля (пароль хранится в виде хеша, API не возвращает хеш пароля клиенту).
API:
- Создание пользователя с переданными в теле email, password и name.
POST/signup
- Проверка переданных в теле почты и пароля и возвращение JWT
POST/signin
- Получение информации о пользователе (email и имя)
GET/users/me
- Обновление информации о пользователе (email и имя)
PATCH/users/me
- Получение всех фильмов, сохранённых текущим пользователем
GET/movies
- Создание фильма с переданными в теле country, director, duration, year, description, image, trailer, nameRU, nameEN и thumbnail, movieId
POST/movies
- Удаление сохранённого фильма по id
DELETE/movies/_id
Как установить и запустить проект:
- Клонировать репозиторий:
git clone https://github.com/annavilnid/movies-explorer-api.git
- Установить зависимости:
npm install
- Собрать проект Вебпаком:
npm run build
- Запустить проект на локальном сервере:
npm run dev
Сейчас сервер выключен, когда сервер включен проект доступен:
- SERVER LINK: https://api.vilnid.nomoredomains.sbs
- PUBLIC IP: 84.201.178.236
- SERVER: api.vilnid.nomoredomains.sbs