node.js :net.Server connection 事件 与 net.Socket conntct事件 触发顺序。

http://nodejs.org/docs/latest/api/net.html#net_event_connection

http://nodejs.org/docs/latest/api/net.html#net_event_connect


服务器端 :connection 事件,当有一个新的连接时,触发。

客户端 : connect 事件当一个套接字连接成功建立了发出的。(已经完成三次握手)。


所在,在一个服务器、客户端都用node.js 实现的情况下,在一个网络连接过程中, 服务器端  connection 事件 比 connect 事件先触发。


netServer.js

var net = require('net');

var server = net.createServer({allowHalfOpen:true},function(c){ //有新链接,第一时间触发
    console.log('server connected');

    c.on('end',function(){
        console.log('server disconnected');
        c.end();
    });

    c.write('hello\r\n');
    c.pipe(c);
});

server.listen(8124,function(){
    console.log('server bound');
});

netClient.js

var net = require('net');

var client = net.connect({port:8124},function(){ //socket对象生成后触发(三次握手并成生socket对象之后)
    console.log('client connected');
    client.write('world\r\n');
});

client.on('data',function(data){
    console.log(data.toString());
    client.end();//发送FIN 包。
});

client.on('end',function(){
    console.log('client disconnected');
});

客户端 

你可能感兴趣的:(node.js,net.Server,netSocket)