我正在运行一个带有Nodejs和Socket.io的聊天服务器,在某些浏览器中,一切正常并使用本机websockets。
但在某些情况下,它会使用 xhr-polling 来解决问题。
Firebug输出:
GET http://{domain}:8080/socket.io/1/?t={time}
GET http://{domain}:8080/socket.io/1/xhr-polling/X_mBol8OqjbULLXozLc?t={time} 200 OK 2m
Error: The connection to ws://{domain}:8080/socket.io/1/websocket/dsEWQdsaDWQEcHTR was interrupted while the page was loading
...yep.name="flashsocket",c.prototype.open=function(){var a=this, c=arguments; return...
GET http://{domain}:8080/socket.io/1/xhr-polling/X_mBol8OqjbULLXozLc?t={time} 200 OK 20s
GET http://{domain}:8080/socket.io/1/xhr-polling/X_mBol8OqjbULLXozLc?t={time} 200 OK 20s
Firebug屏幕截图:http://tinypic.com/view.php?pic=23r5pvb&s=5
客户信息:
socket.io configure:
io.configure(function(){
io.enable('browser client minification');
io.enable('browser client etag');
io.enable('browser client gzip');
io.set('transports', [
'websocket'
, 'flashsocket'
, 'htmlfile'
, 'xhr-polling'
, 'jsonp-polling'
]);
});
答案 0 :(得分:0)
与ws的连接:// {domain}:8080 / socket.io / 1 / websocket / dsEWQdsaDWQEcHTR 在页面加载时被中断
这是问题的关键,我认为它没有回到xhr-polling,因为通过ws连接时出错。