Socket.io Базовое веб-сокет соединение с URL? - PullRequest
0 голосов
/ 11 сентября 2018

Мой клиент отправляет запрос WebSocket на этот URL: ws://localhost:3000/feed/XBTMUR

enter image description here

На моем сервере NodeJ работают под управлением Express. Я хочу использовать Socket.io для прослушивания клиентов, подключающихся к этому URL, и регулярной отправки данных фида. Я пробовал это, но это не работает:

var app = require('../app');
var http = require('http');

/**
 * Get port from environment and store in Express.
 */

var port = normalizePort(process.env.PORT || '3000');
app.set('port', port);

/**
 * Create HTTP server.
 */

var server = http.createServer(app);
/**
 * Listen on provided port, on all network interfaces.
 */

var io  = require('socket.io')(server);
var feed =
    io.of('/feed/XBTMUR').on('connection', function (socket) {

        socket.emit('news', { hello: 'world' });
        socket.on('my other event', function (data) {
            console.log(data);
        });
    });

io.on('connection', function(socket) {
    console.log('a user connected, id ' + socket.id);
    socket.on('disconnect', function() {
        console.log('a user disconnected, id '  + socket.id);
    })
})
setInterval(()=>{
    io.sockets.emit('this', { receivers: 'everyone'});
},1000)

server.listen(port);

Клиент не использует Socket io.

1 Ответ

0 голосов
/ 11 сентября 2018

Я чувствую, что при чтении документации .

var feed = io.of('/feed')     // `/feed` is the namespace
.on('connection', function (socket) {

    socket.to('XBTMUR', { hello: 'world' });  // `XBTMUR` is the room / socket id

});

реализация неверна.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...