我遇到了一个非常奇怪的插槽IO问题,直到几周它运行良好。套接字似乎连接,并且发生2probe,3probe的初始序列。然而,似乎套接字启动升级过程并且永远不会完成。状态socket.io.engine.upgrading
始终为真,直到日志指示socket.io-client:socket close (ping timeout)
并且它尝试重新连接,仅针对同一事件发生
正在使用的Socket.io是版本1.7.2
方案
在端口443上运行的Node.js服务器
var options = {
key: fs.readFileSync(config.server.ssl.keyPath),
cert: fs.readFileSync(config.server.ssl.certPath)
};
var ioServer = https.createServer(options, app);
var port = (config.server.ssl && config.server.ssl.enabled) ? 443 : process.env.PORT || config.server.port;
io = require('socket.io').listen(ioServer);
客户端是使用require
的webappsocket = require('socket.io-client')();
任何想法?