我正在存放插座。每个用户使用redis登录时的id
redisClient.set(user._id + ':socket', socket.id)
当这个用户的任何帖子。_id被创建时,我试图使用上面存储的socket.id向那个特定用户的套接字发出一个事件
var mySocket=redisClient.get(user._id + ':socket')
socket.broadcast.to(mySocket).emit('my message', msg);
问题是我无法使用上述代码向该特定套接字发出。我正在使用套接字。io版本
试一试;
io.to(socket.id).emit("event", data);
它应该能帮你。。!!
我有一个关于如何改进这个代码的问题。我是Socket.io的新手,我一直在YouTube上看一个关于私人信息的视频教程。我只是想知道有没有更好的方法来改进下面的代码行? 但似乎不起作用。
我的服务器代码使用将消息发送到特定的套接字,请参阅https://socket.io/docs/emit-cheatsheet/ 但是,当连接坏了,客户机断开并再次连接时,socketId会发生变化,并且会失败。那么如何实现re-emit方法来处理重新连接呢? 我的问题与此相反,socket.io在x秒/第一次尝试获得响应失败后停止重新发出事件,从中我了解到socket.io客户端在重新连接时可以
问题内容: 我从socket.io + node.js开始,我知道如何在本地发送消息和广播功能:-所有连接的客户端都收到相同的消息。 现在,我想知道如何向特定的客户端发送私人消息,我的意思是一个套接字,用于2个人之间的私人聊天(客户端到客户端流)。谢谢。 问题答案: 当用户连接时,它应使用唯一的用户名(例如电子邮件)向服务器发送消息。 一对用户名和套接字应存储在这样的对象中: 在客户端上,使用以下
我从插座开始。io节点。js,我知道如何在本地发送消息和广播函数:-所有连接的客户端都接收相同的消息。 现在,我想知道如何向特定客户端发送私人消息,我的意思是两个人之间的私人聊天(客户端到客户端流)的一个套接字。谢谢。
问题内容: 我只能在用户的套接字ID直接存储在io.sockets.on(’connect’)函数中时向用户发出消息。我不知道为什么在登录后尝试存储其套接字ID时为什么不起作用。 加工: 无法运作: JavaScript客户端代码段 解决方案:感谢@alessioalex, 我不得不从登录页面中删除对socket.io的引用,并将以下内容添加到io.sockets.on(’connection’)
问题内容: 我编写了用于向 所有 用户广播消息的代码: 请注意: 我没有任何用户参考,只有一个连接。 所有用户连接均存储在中。 目标 :假设Node.js服务器希望将消息发送到特定客户端(约翰)。NodeJs服务器如何知道John拥有哪个连接?Node.js服务器甚至都不认识John。它所看到的只是连接。 因此,我相信现在,我不应该仅通过用户连接来存储用户,而是需要存储一个对象,其中将包含和对象。