"Бэкенд Mesto" - создание RESTful API для социальной сети Mesto. Проект выполнен самым популярным фреймворком для разработки серверного кода — Express. БД MongoDB. Управление запросмами к БД с помощью Mongoose.
- Регистрация и авторизация пользователей
- Пароли в БД хранятся в захешированном виде
- Чтение и запись JWT в cookie
- Сохранение и отправка карточек на frontend
- Хранение информации по кол-ву лайков на карточке
- Логирование ошибок и запросов на сервере, а так же ротация логов
- отправка сообщений в Telegram с информацией об ошибках и запросам к ендпоинтам
- Установлен лимитер запросов к серверу
- NODE JS
- Express
- TypeScript
- Winston
- MongoDB
- Mongoose
#Клонируйте репозиторий по SSH
git@github.com:Shoomec74/mesto-project-plus.git
#Клонируйте репозиторий по HTTPS
https://github.com:Shoomec74/mesto-project-plus.git
#Устанвите зависимости
npm i
Создайте файл .env в корне проекта, скопируйте содержимое файла .env.example Далее замените значения у следующих переменных:
#Введите команду в консоль - сгенерирует 256-битный (32-байтный) ключ и выведет его в консоль
node -e "console.log(require('crypto').randomBytes(32).toString('hex'));"
#Замените yourSecretString на полученное значение
JWT_SECRET=yourSecretString
#Найдите и запустите бота @backendMestoBot в Telegram
#далее замените yourChatID на ваш ChatID
CHAT_ID=yourChatID
#Запустите проект
npm run dev
Для использования вам потребуется программа "Postman" установите её для вашей системы. Импортируйте в программу набор ендпоинтов из файла Mesto_localhost.postman_collection.json