💬NodeJs WebSocketS Chat App

Если вы хотите создать суперпростое приложение для чата, конечно, вы должны использовать socket.io, который является абсолютным номером один,
Вы также можете использовать WebSocket API на фронтенде и в бэкенде.

Клиент WebSocket

Объект WebSocket предоставляет API для создания и управления WebSocket-соединением с сервером,
а также для отправки и получения данных по соединению.

На стороне клиента сначала необходимо создать WebSocket-соединение

const socket = new WebSocket('ws://localhost:8080');

Войти в полноэкранный режим Выйти из полноэкранного режима

События

Необходимо создать три слушателя событий с помощью addEventListener(),

  1. первый — для события ‘open’,
    срабатывающего при открытии соединения с WebSocket,

  2. второй для события ‘close’
    запускаемое при закрытии соединения с WebSocket,

  3. и последний для события ‘message’,
    срабатывающее при получении данных через WebSocket.

socket.addEventListener('open', function (event) {
    socket.send('Hello Server!');
});

socket.addEventListener('message', function (event) {
    console.log('Message from server ', event.data);
});

Вход в полноэкранный режим Выход из полноэкранного режима

WebSocket на стороне сервера

В бэкенде вы также можете использовать технологию WebSocket, в NodeJs вы можете установить
библиотеку ws
Она очень проста в реализации, для ее установки выполните следующую команду

npm i ws

импортируйте и создайте WebSocket Server ‘wss’.

import WebSocket, {WebSocketServer} from 'ws';

const wss = new WebSocketServer({port:8080});

Войдите в полноэкранный режим Выйти из полноэкранного режима

прослушать соединение и отправить строку или объект приветственного сообщения

wss.on('connection', (ws, req)=>{

 ws.send(JSON.stringify({time: datetime, message:`💬 Welcome from the Server 🎉.`}));
});

Войти в полноэкранный режим Выход из полноэкранного режима

В этом видео руководстве вы можете увидеть супер простую реализацию, удачного дня!

Видеоинструкция
🆗 👋

Оцените статью
Procodings.ru
Добавить комментарий