Node.js Socket.IO+;快速:获取与快速会话关联的套接字
我希望从ExpressHTTP路由处理程序引发应用程序范围的事件。 e、 g用户修改记录,并向任何其他感兴趣的用户发出事件 在某些情况下,我希望向所有客户机广播,但发出(http)请求的客户机除外。 这可以通过对您希望排除的套接字进行广播来实现,但是我当前无法访问与验证http请求的会话相关联的套接字 我已经了解了如何从套接字请求中检索用户的express会话(即从cookie获取会话ID,从sessionStore检索会话) 是否可以反向工作,或者针对会话存储socketId以供以后检索?有人能识别出这种方法的任何即时警告或缺陷吗 如果套接字通过redis商店分布在服务器上,也会有影响吗? 我可以预见这样一种情况,即每个用户的http请求都会进入到不同的节点来接受套接字请求Node.js Socket.IO+;快速:获取与快速会话关联的套接字,node.js,sockets,express,Node.js,Sockets,Express,我希望从ExpressHTTP路由处理程序引发应用程序范围的事件。 e、 g用户修改记录,并向任何其他感兴趣的用户发出事件 在某些情况下,我希望向所有客户机广播,但发出(http)请求的客户机除外。 这可以通过对您希望排除的套接字进行广播来实现,但是我当前无法访问与验证http请求的会话相关联的套接字 我已经了解了如何从套接字请求中检索用户的express会话(即从cookie获取会话ID,从sessionStore检索会话) 是否可以反向工作,或者针对会话存储socketId以供以后检索?有人
非常感谢 我也想知道这个,谢谢你的询问!所以你想用一个自定义的
socketID
创建一个socekt,对吗?我不确定这是否可行。@Pio否。我想将socketID
保存到会话中,然后稍后通过该socketID
检索套接字。然后将其添加为会话变量/在服务器端创建哈希映射。但请注意,每当客户端和服务器之间的套接字连接被中断/重新建立时,就会重新生成socketID
。我有一个类似的情况,所以我保留了一个