Описание тега ws
NoneWs - это простая в использовании, невероятно быстрая и тщательно протестированная реализация клиентского и серверного JavaScript WebSocket.
ws: библиотека Node.js WebSocket
WebSockets представляют собой долгожданную эволюцию клиент-серверных технологий. Они позволяют установить одно соединение TCP-сокета между клиентом и сервером, что позволяет распределять двунаправленные сообщения с небольшими накладными расходами, что приводит к соединению с низкой задержкой.
ws
позволяет легко реализовать этот протокол в приложениях Node, как для серверов WebSocket, так и для клиентов WebSocket. Этот модуль не подходит для браузерных приложений, которые должны использовать собственныйWebSocket
объект; возможности клиента WebSocket предназначены для приложений Node с ролью клиента.
Ресурсы
- Домашняя страница NPM
- Домашняя страница Github
- Руководство Флавио Коупса по WebSockets, используя
ws
пакет для кода узла
пример
// 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