Socket.IO make an infinte loop on connection ! It's weird and never happen until now. I don't know what's wrong. I try to rebuild the package, I copy some code from an older source and the same result...
io.on('connection', function(socket){
console.log('someone connected << infinite loop');
});
It's a basic ExpressJS server with http on top.
const
port = process.env.PORT || 3200,
app = require('express')(),
express = require('express'),
mysql = require('mysql'),
bodyParser = require('body-parser'),
path = require('path'),
methodOverride = require('method-override'),
http = require('http').Server(app),
io = require('socket.io')(http);
Client-Side
var socket = io();
The problem was at the client-side, I don't load the latest version of socket.io like on the server-side. In my package.json I have 2.0.3 and at the client-side was 1.2.0.. For everyone who have this problem
This happened to me when I emitted an array (on connection) and not an object...
I solved it by wrapping the array with {} so I'm now sending an object... i.e {array}...
e.g:
myArray = [{blah:"some value"},{blah2:"some other value"}];
socket.emit('target',myArray); //results in infinite loop
socket.emit('target',{myArray}); //sends ok and not looping
No need for socket version to match on server and client... in my case the client is c# and my server is node.js
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With