为什么我的socket.io在服务器重启时得到连接?

在我的节点server.js文件我设置socket.io

var io = require('socket.io').listen(socketPort); io.sockets.on('connection', function (socket) { console.log(socket.id); }); 

所以当客户端连接的时候这个工作正常,但是当我重新启动我的节点服务器时,它会再次调用这个函数,以前连接的所有客户端。 也就是说,caching客户端的东西。 但我不想这样做。 我希望它从新鲜的启动服务器。 并且每个客户端连接只调用一次该事件(当客户端启动浏览器或刷新浏览器时)。

或者至less,我想要一个标志,知道这是我重新启动我的服务器后发生的连接。 有什么build议么?

也许有一种方法,当我的服务器重新启动时,我可以刷出套接字?

我看到这个线程: socket.io重新连接后创build一个更多的连接但是我不知道“iosocket.once('connect',function(){})”来自我使用io.sockets

       

网上收集的解决方案 "为什么我的socket.io在服务器重启时得到连接?"