NoneWs - это простая в использовании, невероятно быстрая и тщательно протестированная реализация клиентского и серверного JavaScript WebSocket.

ws: библиотека Node.js WebSocket

WebSockets представляют собой долгожданную эволюцию клиент-серверных технологий. Они позволяют установить одно соединение TCP-сокета между клиентом и сервером, что позволяет распределять двунаправленные сообщения с небольшими накладными расходами, что приводит к соединению с низкой задержкой.

wsпозволяет легко реализовать этот протокол в приложениях Node, как для серверов WebSocket, так и для клиентов WebSocket. Этот модуль не подходит для браузерных приложений, которые должны использовать собственныйWebSocketобъект; возможности клиента WebSocket предназначены для приложений Node с ролью клиента.

Ресурсы

пример

// index.js
const WebSocket = require('ws');

// server code
const wsServer = new WebSocket.Server({port: 8080});
wsServer.on('connection', serverSocket => {
    console.log('server: new connection');
    serverSocket.onopen = evt => console.log('server: open');
    serverSocket.onmessage = evt => console.log('server: message:', evt.data);
    serverSocket.onclose = evt => console.log('server: close');
    setTimeout(() => serverSocket.send('Hello from server'), 1000);
    setTimeout(() => serverSocket.close(), 3000);
});

// client code
const clientSocket = new WebSocket('ws://localhost:8080');
clientSocket.onopen = evt => console.log('client: open');
clientSocket.onmessage = evt => console.log('client: message:', evt.data);
clientSocket.onclose = evt => console.log('client: close');
setTimeout(() => clientSocket.send('Hello from client'), 2000);

Прокомментированный стандартный вывод node index.js:

# t=0s
server: new connection
client: open

# t=1s
client: message: Hello from server

# t=2s
server: message: Hello from client

# t=3s
server: close
client: close