Node.js: socket.io close client connection Node.js: socket.io close client connection express express

Node.js: socket.io close client connection


Did you try:

socket.disconnect() 

on client?


For socket.io version 1.4.5:

On server:

socket.on('end', function (){    socket.disconnect(0);});

On client:

var socket = io();socket.emit('end');


There is no such thing as connection on server side and/or browser side. There is only one connection. If one of the sides closes it, then it is closed (and you cannot push data to a connection that is closed obviously).

Now a browser closes the connection when you leave the page (it does not depend on the library/language/OS you are using on the sever-side). This is at least true for WebSockets (it might not be true for long polling because of keep-alive but hopefuly socket.io handles this correctly).

If a problem like this happens, then I'm pretty sure that there's a bug in your own code (on the server side). Possibly you are stacking some event handlers where you should not.