FullStack приложение: Сервис обмена сообщениями.
node v21.1.0
Запуск:
$ git clone https://github.com/SukhanovIgorG/WS-React.git
cd ./back
npm i
npm run start:prod
в новом терминале
cd ./front
npm i
npm run dev
Используемые технологии:
- Node.js
- React
- React Query
- WebSockets
Описание простое приложение для обмена сообщениями между клиентом и сервером. Сервер на Node.js имеет следующие роуты:
HTTP
● POST Создать сообщение
● DELETE Удалить сообщение
● GET Получить все сообщения
WS
● POST Создать сообщение
● DELETE Удалить сообщение
Контент сообщения это просто текст. Созданные сообщения должны храниться в памяти сервера. При добавлении или удалении сообщения сервер должен оповещать всех подписчиков через WebSocket.
React-приложение использует библиотеку React Query для взаимодействия с данными сервера. События WebSocket должны обновлять данные в React Query. UI отображает список сообщений, предоставляет инпут для создания новых сообщений и для каждого сообщения имеет кнопку удаления.
При запуске клиентское приложение получает список сообщений через GET запрос к серверу, затем обновления списка сообщений приходят через WebSocket.