如何使用Socket.io向房间中的所有人广播消息

时间:2018-12-02 22:42:55

标签: websocket server socket.io client communication

我正在尝试使用socket.io创建一个自定义房间,但是运气还不太好。我可以在服务器和客户端之间进行通信,只有在尝试使用房间时才会出现问题。以下是我的实现:

客户端:

socket.on('connect', () => {
            console.log('Connected');
            socket.emit('room', 'hello');
        });

socket.on('message', function(data) {
            console.log('Incoming message:', data);
        });

socket.open();

服务器端:

io.on('connection', (socket) => {
    console.log(`Socket ${socket.id} connected.`);

    socket.on('disconnect', () => {
        console.log(`Socket ${socket.id} disconnected.`);
    });

    socket.on('room', function(msg) {
        socket.join('room', () => {
            socket.to('room').emit('message', "wohoo");
        });
    });
});

我收到消息并从服务器端加入会议室,但是客户端从未收到在会议室中发出的消息。

1 个答案:

答案 0 :(得分:0)

您好,要获取会议室消息代码,我认为这对您有所帮助。

https://github.com/JSbotHQ/RealTime-Socket.IO/tree/master/ExpressJS

要测试您的SocketIO事件,可以使用以下命令:https://chrome.google.com/webstore/detail/firecamp/eajaahbjpnhghjcdaclbkeamlkepinbl