net网络模块

net模块,用于创建基于流的tcp或ipc服务器与客户端。

        TCP:基于流的传输协议。IPC:进程间的通信的一种协议或方法。

拥有的方法:createrServer([options][, connectionListener]):创建一个新的TCP或者IPC服务。

                    createConnection():创建一个socket类。可以是TCP也可以是ICP。

                    connect():上诉函数的别名

                    isIP(input):测试input是否是ip地址。无效的字符串则返回 0,IPv4 地址则返回 4,IPv6的地址则返回 6。

                    isIPv4(input):返回true/false。isIPv6(input)

net.Server类:这个类用于创建TCP或IPC server。继承至EventEmitter类

        1,拥有的事件:a,'close'事件。服务关闭时触发,如果有链接存在,直到所有的链接结束才会触发这个事件。

                                  b,'connection'事件,当一个新的链接建立时触发。

                                  c,'error'事件,错误监听。

                                  d,'listening',事件。监听开启服务事件server.listen()

      2,拥有的方法:address():返回一个有 portfamily, 和 address 属性的对象,返回地址信息。

                                  close(callback):关闭服务。

                                 getConnections(callback):异步获取服务器的当前并发链接数,当 socket 被传递给子进程时工作。回调函数的两个参数是 err 和 count。                    

                                 listen():为链接启动一个监听,一个链接可以是TCP和ICP,取决于他监听什么。调用多次,重新打开服务器。

                                server.listening:判断是否处于链接状态。

                                server.maxConnections:设置改属性使得当server链接过多时拒绝链接。

                                ref() :unref()。是否要维持Node进程。

net.Socket类:这个类是 TCP 或 UNIX Socket 的抽象,这个类也是个可读可写流,还继承了事件类。

       1,拥有的事件:a,'close'事件,一旦 socket 完全关闭就发出该事件。参数 had_error 是 boolean 类型,表明 socket 被关闭是否取决于传输错误。

                                b,'lookup'事件,在查找到主机之后,创建链接之前触发。

                                c,'error'错误事件,当发生错误之后触发,随后触发close事件。

                                d,'connect',当一个scoket被链接时触发该事件。

                                e,'ready'事件:准备ok触发,表明准备好了。

                                f,'timeout'事件:当 socket 超时的时候触发。该事件只是用来通知 socket 已经闲置。用户必须手动关闭。

                                g,'data'事件,当有信息传输时触发该事件,注意当 Socket 发送 data 事件的时候,如果没有监听者数据将会丢失

                                h,'drain'事件:当写入缓冲区变为空时触发。可以用来做上传节流。

                                i,'end'事件:监听主动结束事件,错误引发关闭不会触发该事件。

     2,拥有的方法:address(),和server一样。

                               write(data[, encoding][, callback]):发送数据给父链接。如果全部数据都成功刷新到内核的缓冲则返回 true。如果全部或部分数据在用户内中排队,则返回 false。当缓冲再次空闲的时候将触发 'drain' 事件。

当数据最终都被写出之后,可选的 callback 参数将会被执行 - 可能不会立即执行。

                               localAddress:返回本地ip地址,正在使用的。localPort:返回本地端口号。

                               remoteAddress:远程 IP 地址。remoteFamily:远程IP 协议族。remotePort:数字表示的远程端口。

                               bufferSize:此属性显示当前即将被写入的缓冲的字符数。

                               bytesRead:接收的字节数量。bytesWritten:发送的字节数量。

                               connecting:下面方法没有被调用。

                               connect():建立一个链接,通常该方法是不需要的,一般只在实现一个自定义的 Socket 的时候使用该方法。

                               destroy():销毁该socket,仅在出现错误的时候才用到。

                               destroyed:一个布尔值,用来指示链接是否已经被销毁。一旦连接被销毁就不能再使用它传输任何数据。

                               end():半关闭 socket。 例如发送一个 FIN 包。 服务端仍可以发送数据。

                               pause():暂停读写数据。也就是说,'data' 将不会再被触发。可以用于上传节流。

                               resume():暂停之后的回复数据。

                               setEncoding([encoding])设置作为可读流(Readable Stream)的编码。

                               setKeepAlive([enable][, initialDelay]):启用/禁用长连接功能。

                              setNoDelay([noDelay]):禁止 Nagle 。默认情况下 TCP 连接使用 Nagle 算法,在发送之前缓冲数据。将 noDelay 设置为 true 将会在每次 socket.write() 被调用的时候立即发送数据。noDelay默认是 true

                              setTimeout(timeout,callback):多少毫秒不活动之后会触发timeout事件,然后可以手动关闭改服务。

                               ref(),unref()。是否加入控制Node状态的列表。

        

转载于:https://my.oschina.net/u/3971746/blog/3006272

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值