Javascript 如何使聊天信息成为私人信息?

Javascript 如何使聊天信息成为私人信息?,javascript,node.js,socket.io,ejs,Javascript,Node.js,Socket.io,Ejs,现在我的聊天功能正常了,但它的工作原理就像一条群发信息,因为第三方可以看到这些信息。我想让它在两个用户之间保密,这样当第三个用户登录时,他们将无法看到其他用户在说话 var io = socket(server); io.on("connection", function(socket){ console.log("made socket connection", socket.id); socket.on("chat", function(data){ v

现在我的聊天功能正常了,但它的工作原理就像一条群发信息,因为第三方可以看到这些信息。我想让它在两个用户之间保密,这样当第三个用户登录时,他们将无法看到其他用户在说话

var io = socket(server);


io.on("connection", function(socket){
    console.log("made socket connection", socket.id);

    socket.on("chat", function(data){
        var messages = {
            session: data.session,
            message: data.message,
            sender: data.handle,
        };
        MsgModel.create(messages);
        io.sockets.emit("chat", data);
    });

    socket.on("typing", function(data){
        socket.broadcast.emit("typing", data);
    });
});

每当新客户端以其
userid
作为数据加入时,从客户端发出
join
事件。然后在服务器端,您可以使用此
join
事件将用户添加到具有
userid
的文件室中

io.on('connection', function(socket){
  socket.on("join", function(data){
      socket.join(data.userId)
    })
  })
现在您有了每个
userid
的房间,如果您想发送一些特定的用户信息,您可以发送到该房间

io.to(userid).emit(data)