Socket的发送方.IO消息不能像其他用户一样获取消息



我想实现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/

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

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

请注意,这里使用的是全局 io,我认为您应该像这样包含它:

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

相关内容

  • 没有找到相关文章

最新更新