RESTful сервис для работы с фильмами. Позволяет сохранять и удалять выбранные пользователем фильмы. Доступ к приватному API предоставляется после регистрации. Проект выполнен в рамках дипломной работы по курсу "Веб-разработчик" от Яндекс Практикум.
Метод | Путь | Описание |
---|---|---|
GET | /users/me | возвращает информацию о пользователе |
PATCH | /users/me | обновляет информацию о пользователе |
GET | /movies | возвращает все сохранённые пользователем фильмы |
POST | /movies | создаёт фильм с переданными в теле данными |
DELETE | /movies/_id | удаляет сохранённый фильм по _id |
POST | /signup | создаёт пользователя с переданными в теле данными |
POST | /signin | возвращает JWT, если в теле запроса переданы правильные почта и пароль |
POST | /signout | удаляет JWT из куки для авторизованного пользователя |
Структура сервиса Movie explorer API составлена согласно общепринятым практикам разработки на Express. Проект включает в себя следующие директории:
configs
- файлы для настройки сервера.routes
- определение маршрутов, к которым могут обращаться пользователи и определение действий, которые необходимо выполнить для каждого маршрута.middlewares
- функции, которые выполняются перед и после обработки запроса.controllers
- файлы для обработки запросов и реализации бизнес-логики приложения.models
содержит описания моделей для работы с базой данных.utils
- вспомогательные утилиты для упрощения процесса разработки и улучшения качества кода.
Для работы приложения необходимо установить:
- Установите npm пакеты
npm install
- Создайте файл .env в корневой директории проекта и пропишите в нем настройки приложения и базы данных, например:
NODE_ENV=production JWT_SECRET=jwt-secret MONGO_HOST=localhost MONGO_PORT=27017 MONGO_DB=bitfilmsdb
- Запустите MongoDB
Windows:macOS:mongod
Linux:mongod или brew services start mongodb-community@version
sudo systemctl status mongod или sudo service mongod start
- Запустите приложение в одном из режимов
Разработка:Деплой:npm run dev
npm run start