模块 dgram
dgram 模块提供了 UDP 数据包 socket 的实现
基础模块,引用方式:
1var dgram = require('dgram');
对象
Socket
dgram.Socket 对象是一个封装了数据包函数功能的 EventEmitter。参见 DgramSocket
1DgramSocket dgram.Socket;
dgram.Socket 实例是由 dgram.createSocket() 创建的。创建 dgram.Socket 实例不需要使用 new 关键字。
静态函数
createSocket
创建一个 dgram.Socket 对象
1static DgramSocket dgram.createSocket(Object opts);
调用参数:
- opts: Object,
返回结果:
- DgramSocket, 返回创建的 Socket 对象
opts 允许的选项是:
1
2
3
4
5
6{
"type": "udp4" | "udp6", // 必填
"reuseAddr": true | false, //若设置为 true,socket.bind() 则会重用地址,即时另一个进程已经在其上面绑定了一个套接字。 默认是 false
"recvBufferSize": 1024, // 设置 SO_RCVBUF 套接字值
"sendBufferSize": 1024 //设置 SO_RCVBUF 套接字值
}
创建一个 dgram.Socket 对象
1
2static DgramSocket dgram.createSocket(Object opts,
Function callback);
调用参数:
- opts: Object,
- callback: Function, 为 'message' 事件添加一个监听器。
返回结果:
- DgramSocket, 返回创建的 Socket 对象
opts 允许的选项是:
1
2
3
4
5
6{
"type": "udp4" | "udp6", // 必填
"reuseAddr": true | false, //若设置为 true,socket.bind() 则会重用地址,即时另一个进程已经在其上面绑定了一个套接字。 默认是 false
"recvBufferSize": # # #, // 设置 SO_RCVBUF 套接字值
"sendBufferSize": # # # //设置 SO_RCVBUF 套接字值
}
创建一个 dgram.Socket 对象
1static DgramSocket dgram.createSocket(String type);
调用参数:
- type: String, 套接字族,'udp4' 或 'udp6'。
返回结果:
- DgramSocket, 返回创建的 Socket 对象
创建一个 dgram.Socket 对象
1
2static DgramSocket dgram.createSocket(String type,
Function callback);
调用参数:
- type: String, 套接字族,'udp4' 或 'udp6'。
- callback: Function, 为 'message' 事件添加一个监听器。
返回结果:
- DgramSocket, 返回创建的 Socket 对象