Reputation: 59
Please, help me!
After update to last version of Google Chrome (43.0.2357.65) on my website socket.io stops working.
It sends too many requests and every time create new socket connection.
Screenshot Network of Google Developer Tools of my site: https://i.sstatic.net/TLXGg.png
But demo example on socket.io website http://socket.io/demos/chat/ works fine.
Screenshot Network for socket.io demo: //i.sstatic.net/QWNW2.png
I'm using this code on client:
$.getScript('http://localhost:1337/socket.io/socket.io.js', function () {
var socket = io.connect('http://localhost:1337/?token=ABCDEF');
});
In other browsers code works fine, and in google chrome before update it works fine
Socket.io version 1.3.5
In console i have these debug messages:
engine.io-client:polling-xhr xhr open GET: //it.iksys:1337/socket.io/?token=410235d6a03ead4497fa18037e8da5d73133367d&EIO=3&transport=polling&t=1432302871093-738 +1ms
socket.io.js?_=1432302864284:3715 engine.io-client:polling-xhr xhr data null +1ms
socket.io.js?_=1432302864284:3715 engine.io-client:polling polling got data ok +4ms
socket.io.js?_=1432302864284:3715 engine.io-client:socket socket receive: type "error", data "parser error" +0ms
socket.io.js?_=1432302864284:3715 engine.io-client:polling polling +1ms
socket.io.js?_=1432302864284:3715 engine.io-client:polling-xhr xhr poll +1ms
socket.io.js?_=1432302864284:3715 engine.io-client:polling-xhr xhr open
Upvotes: 3
Views: 1435
Reputation: 4667
// package.json
{
"dependencies": {
"socket.io-client": "2.1.1"
}
}
https://github.com/socketio/socket.io-client/issues/1245
Upvotes: 0
Reputation: 59
I found solution in defining only websocket transport for client:
NodeJS:
var options = {};
options.transports = ['websocket'];
var socket = io.connect('http://localhost:1337/?token=ABCDEF', options);
Angular 4:
this.socket = io(environment.socketURL, { upgrade: false, transports: [ 'websocket' ], query: {token: TokenService.token()}});
I suppose that this version of Google Chrome has some problems with xhr-polling.
Upvotes: 2