В настоящее время проблема с «Broadcast», похоже, не работает должным образом с помощью супер простой настройки веб-памяти, которую я начал в Node. Это мой первый раз, когда я работаю с веб-сайтами, поэтому мне может не хватать чего-то довольно очевидного, но после долгого поиска в Интернете я не смог найти разрешение.Node Websockets Broadcast не работает
В основном я просто пытаюсь вытащить некоторые json для всех подключенных к Интернету клиентов.
Я могу подтвердить, что этот сокет работает, потому что я могу видеть статическую строку соединения в 'ws.send' в блоке 'connection', когда я подключаюсь к ws: // localhost: 3000, а также вижу mulitple клиенты выходили из метода широковещания, если я подключаюсь к нескольким клиентам.
Любая помощь, как к тому, что я может отсутствовать было бы весьма признателен,
var WebSocketServer = require('uws').Server;
var wss = new WebSocketServer({ port: 3000 }); // ws://localhost:3000
// Static test var
var test_message = {
'test': 'Response',
'test2': 'Response2'
};
// Broadcast to all.
wss.broadcast = function broadcast(data) {
wss.clients.forEach(function each(client) {
console.log('IT IS GETTING INSIDE CLIENTS');
console.log(client);
// The data is coming in correctly
console.log(data);
client.send(data);
});
};
wss.on('connection', function(ws) {
ws.on('message', function(message) {
wss.broadcast(test_message);
console.log('Received: ' + message);
});
// TODO This is static just to check that the connection is properly working
ws.send('You successfully connected to the websocket.');
});
это, кажется, работает в моем случае. Можете ли вы поделиться клиентским кодом? –
Прямо сейчас я просто использую расширение chrome для проверки сокета, у меня нет клиента. Расширение, которое я использую, называется «Smart Websocket Client», неспособное видеть трансляцию, нажимающую сообщение на часть ответа этого клиента. Цените помощь! – parchambeau