我使用SocketIO与HTML5网络应用程序中的NodeJS服务器进行通信。在完成与SocketIO(io.connect)的第一次连接后,如果我打开一个新选项卡并在应用程序的另一个模块中触发新的登录,它将打开与SocketIO的新连接。第二次连接成功后,第一个websocket连接关闭(我收到“断开连接”事件)。
您是否知道SocketIO库中是否存在阻止服务器与同一台计算机建立多个连接的问题?
如果第一次与Chrome建立连接,第二次连接使用Firefox,则行为相同。
但是,如果我使用Safari,两个连接都会保持活动状态。
很奇怪。
谢谢!
答案 0 :(得分:1)
我们最近在使用Chrome作为主浏览器的OSX计算机上遇到此问题,并尝试使用Firefox打开第二个websocket。该问题与之前未被接受为websocket异常的无效证书有关。如果异常被接受并且已经连接到套接字,则会导致Chrome浏览器断开连接。一旦firefox接受了无效证书的例外,两个连接都被保留。当然,在存在有效证书的生产环境中,这个问题不会发生。