如何使用socket.io和sailsjs在两个用户之间创建私人聊天

时间:2015-01-02 00:52:10

标签: socket.io sails.js

我创建类似聊天的东西,我知道如何使用(sails.sockets.broadcast(... em))向房间内的所有用户发送消息,但无法理解如何向一个用户发送消息(i想想2个用户之间的聊天),当第二个用户向第一个用户发送消息时,首先得到第二个消息,但是当我创建3个用户时,当第三个用户向第一个用户发送消息时 - 第二个用户也得到消息,怎么能我这样做 谁知道怎么做?

1 个答案:

答案 0 :(得分:4)

Socket.io内置了房间。你可以这样做:

io.on('connection', function(socket){
  socket.join('some room');
});

然后用:

调用它
io.to('some room').emit('some event');

或者,您可以将对象与服务器端的emit一起传入,然后在客户端传入,检查该对象是否存在。例如:

var obj = {
    shouldDisplay: someIDhere
}

socket.emit('yourEvent', obj);

然后检查传入事件的对象是否具有ID(如果要显示消息的用户