socket.io-client在断开连接一段时间后保持运行状态

时间:2012-09-18 14:12:52

标签: node.js socket.io

server.js

var io = require('socket.io').listen(3000);

io.sockets.on('connection', function (socket)
{
    console.log("server is connected");
    socket.on('disconnect', function ()
    {
        console.log("disconnected");
    });
});

client.js

var socket = require('socket.io-client')
            .connect('http://localhost:3000/')
            .on('connect', function ()
            {
                console.log("client connected");
                socket.disconnect();
            })
            .on('disconnect', function ()
            {
                console.log('client disconnected');
                //not going to finish the client.js app imediately.
            });

为什么呢?

socket.io-client在断开连接事件后约1分钟保持运行状态。

是否有任何基本修复或智能解决方法?

node.js v0.8.8

socket.io v0.9.10

socket.io-client v0.9.10

2 个答案:

答案 0 :(得分:0)

我只是按照以下方式完成。

client.js

var socket = require('socket.io-client')
        .connect('http://localhost:3000/')
        .on('connect', function ()
        {
            console.log("client connected");

            process.abort();

          //  socket.disconnect();
        })
        .on('disconnect', function ()
        {
            console.log('client disconnected');
        });

答案 1 :(得分:0)

对我来说似乎是一个错误。如果您不想等待,可以在断开连接回调中执行process.exit()