Описание проекта и варианты его запуска
Проект представляет собой API для службы размещения объявлений.
Для запуска проекта в системе должны быть установлены docker и docker compose. Разработка приложения велась на Докере версии 20.10.21 и Докер Композе версии 2.12.2. Версия используемой ноды - 18.12.0, npm - 8.19.3.
Сначала в корне проекта нужно создать файл .env и скопировать туда содержимое .env-example, заменив значения на нужные. Далее нужно запустить сборку с помощью Докера.
Для продакшн-сборки используйте команду docker-compose up, а сборку для разработки можно запустить командой docker-compose -f docker-compose.dev.yml up (нужно находиться в директории проекта). Проект можно запустить и с помощью npm run start, но без подключенной базы данных он далеко не уедет.
Краткая инструкция для тестирования websocket-ов через Postman:
- My Workspace
- New
- WebSocket Request
- Raw поменять на Socket.IO
- ws://localhost:ВНЕШНИЙ_ПОРТ_ПРИЛОЖЕНИЯ/
- Connect
- Запонлнить Event Name
- формат JSON
- Пример: { "text": "Сообщение" }
- Send
Есть еще протокол wss. Не забывать делать дисконнект, если менялись переменные окружения. Входящие сообщения в постмане только что-то мне не приходят, но в базе данных все как надо меняется. Возможно это связано с тем, что у меня 2 разных события. Хотя если приконнектиться еще и с браузера - все исправно обновляется там, так что все ок вроде.