Net

nodejs给我们提供这个模块,是为了提供API操作TCP/IP 。我们用的时候需要require。

它包括了服务器和客户端(它们都是流),当然Net模块,分别提供方法来创建他们。

 

Class: net.Server

这个类是为了创建一个TCP或者说是本地一个服务器。

 

net.Server是 EventEmitter ,所以它拥有下面一些event.

Event: 'close'

当服务器关闭的时候会emit。注意:要所有链接都断掉!!!

Event: 'connection'

 

当客服端与服务器形成一个新的连接的时候,就会emit.回调函数里的参数就是net.Socket的一个实例!

 

Event: 'error'

Emitted when an error occurs. The 'close' event will be called directly following this event. See example in discussion of server.listen.

意思就是整个链接传输过程中出现了错误,就会emit,当然 'close' event也紧跟其后!

Event: 'listening'

调用server.listen()的时候就emit!

server.address()

Returns an object with portfamily, and addressproperties: { port: 12346, family: 'IPv4', address: '127.0.0.1' }

Example:

 1 var server = net.createServer((socket) => {
 2   socket.end('goodbye\n');
 3 }).on('error', (err) => {
 4   // handle errors here
 5   throw err;
 6 });
 7 
 8 // grab a random port.
 9 server.listen(() => {
10   console.log('opened server on', server.address());
11 });
View Code

注意:一定要等"listening"event emit之后才能调用这个方法!具体看上面的例子和"listening"的介绍!

server.close([callback])

停止接收新的链接发送过来,但是!!!!维持了已经存在的链接!!!记住,存在的还是会继续链接着的!!!

这个方法是异步的。当所有链接都断开了,服务器也就关了,然后就发送'close'事件。可选参数callback也就是在'close'emit之后就执行了。

当然,如果服务器已经关闭了,你却调用这个方法,callback的参数err就会被实例化。

 

server.getConnections(callback)

 

posted @ 2016-12-22 21:09  hdu胡恩超  阅读(356)  评论(0编辑  收藏  举报