Here is the code that doesn't work:
Server Side ("master server"):
<code>
var io = require("socket.io").listen(3333);
io.sockets.on('connection',function(socket){
console.log("got a connection");
socket.on('disconnect',function(){
console.log("got a disconnect");
});
});
</code>
Client Side ("slave server"):
<code>
var io = require("socket.io-client")
var socket;
console.log("Connecting to 127.0.0.1:3333");
socket = io.connect("http://127.0.0.1:3333");
socket.on('connect', function(){
console.log("Connected to 127.0.0.1:3333");
});
socket.on('message', function(evt){
console.log("Recieved a message: " + evt);
});
socket.on('disconnect', function(){
console.log("Disconnected from 127.0.0.1:3333");
});
</code>
Console of Master Server:
<code>
debug - client authorized
info - handshake authorized 1639887829241819794
debug - setting request GET /socket.io/1/websocket/
1639887829241819794
debug - set heartbeat interval for client 1639887829241819794
debug - client authorized for
got a connection
debug - websocket writing 1::
debug - set close timeout for client 1639887829241819794
info - socket error Error: write ECONNABORTED
at errnoException (net.js:614:11)
at Socket._write (net.js:435:18)
at Socket.write (net.js:424:15)
at WebSocket.write (c:\Users\Holden\Desktop\server\node_modules
\socket.io\lib\transports\websocket\default.js:192:23)
at WebSocket.flush (c:\Users\Holden\Desktop\server\node_modules
\socket.io\lib\transports\websocket\default.js:213:10)
at Socket.<anonymous> (c:\Users\Holden\Desktop\server\node_modules
\socket.io\lib\transports\websocket\default.js:159:14)
at Socket.emit (events.js:67:17)
at TCP.onread (net.js:322:31)
debug - fired close timeout for client 1639887829241819794
info - transport end
got a disconnect
debug - discarding transport
</code>
On the node-driven client side ("slave server") all that prints is
<code>
Connecting to 127.0.0.1:3333
The "sys" module is now called "util". It should have a similar
interface.
</code>
If I add events to the slave server to look for the "connecting" event
I see that it fails the websocket connection, then moves on to xhr-
polling. After failing xhr-polling it gets stuck in an infinite loop
described here:
https://github.com/LearnBoost/socket.io/issues/438
Does anyone have any suggestions as to what I may be doing wrong or if
this is a socket.io/socket.io-client issue, how to fix it?
Thanks,
b
--
twitter: billyenright