【问题标题】:Sender of Socket.io message cant get messages like other usersSocket.io 消息的发送者无法像其他用户一样收到消息
【发布时间】:2015-07-10 16:54:57
【问题描述】:

我想实现Socket.ioRoom功能,我的配置是这样的:

io.on('connection', function (socket) {
    socket.join('123');
    //...
}

当我想发出一个事件时:

socket.in('123').emit('sendMessage', {items:values]});

但除此消息的发件人外,每个人都会收到此消息。为什么?我必须给发件人emit() 单独的消息吗?

如果我使用 socket.to('123') 而不是 socket.in('123') 我会得到相同的结果并且没有任何变化。我使用Socket.io的官方文档: http://socket.io/docs/rooms-and-namespaces/

【问题讨论】:

  • 这里你有一个list 使用不同的方法。试试io.sockets.in('123').emit('sendMessage', 'your message');

标签: node.js websocket socket.io


【解决方案1】:

要将其发送给包括发件人在内的所有人,您需要使用以下语法:

io.sockets.in('123').emit('message', 'cool game');

请注意,这是使用 global io,我假设您会像这样包含它:

var io = require('socket.io');

【讨论】:

    猜你喜欢
    • 2018-01-04
    • 2021-07-18
    • 1970-01-01
    • 2019-10-13
    • 2014-01-30
    • 2021-09-04
    • 1970-01-01
    • 1970-01-01
    • 2018-01-14
    相关资源
    最近更新 更多