套接字 IO - 新会话触发断开连接
Posted
技术标签:
【中文标题】套接字 IO - 新会话触发断开连接【英文标题】:Socket IO - New session trigger a disconnect 【发布时间】:2012-11-22 12:57:29 【问题描述】:我使用 SocketIO 从 html5 Web 应用程序与 NodeJS 服务器通信。在使用 SocketIO (io.connect) 建立的第一个连接完成后,如果我打开一个新选项卡并触发新的登录,例如在应用程序的另一个模块中,它会打开一个与 SocketIO 的新连接。一旦第二个连接成功,第一个 websocket 连接就会关闭(我收到一个“断开连接”事件)。
您知道 SocketIO 库中是否存在阻止服务器与同一台计算机建立多个连接的东西?
如果第一个连接是用 Chrome 建立的,第二个是用 Firefox 建立的,行为是相同的。
但是,如果我使用 Safari,两个连接都会保持活动状态。
很奇怪。
谢谢!
【问题讨论】:
【参考方案1】:我们最近在使用 Chrome 作为主浏览器的 OSX 计算机上遇到了这个问题,并尝试使用 Firefox 打开第二个 websocket。该问题与之前未被接受为 websocket 例外的无效证书有关。如果异常被接受并且已经连接到套接字,这会导致 chrome 浏览器断开连接。一旦 Firefox 接受了无效证书的例外,两个连接都会保留。当然,在存在有效证书的生产环境中,不应该出现这个问题。
【讨论】:
以上是关于套接字 IO - 新会话触发断开连接的主要内容,如果未能解决你的问题,请参考以下文章