Module 基礎模塊

模塊dgram

dgram 模塊提供了UDP 數據包socket 的實現

基礎模塊,引用方式:

1
var dgram = require('dgram');

對象

Socket

dgram.Socket 對像是一個封裝了數據包函數功能的 EventEmitter參見DgramSocket

1
DgramSocket dgram.Socket;

dgram.Socket 實例是由 dgram.createSocket() 創建的。創建dgram.Socket 實例不需要使用new 關鍵字。

靜態函數

createSocket

創建一個 dgram.Socket 對象

1
static DgramSocket dgram.createSocket(Object opts);

調用參數:

  • opts: Object,

返回結果:

opts 允許的選項是:

1 2 3 4 5 6 7
{ "type": "udp4" | "udp6", // 必填 "reuseAddr": true | false, // 若设置为 true,socket.bind() 则会重用地址,即时另一个进程已经在其上面绑定了一个套接字。 默认是 false "ipv6Only": true | false, // 若设置为 true,socket.bind() 将只接收 IPv6 的数据包。 默认是 false "recvBufferSize": 1024, // 设置 SO_RCVBUF 套接字值 "sendBufferSize": 1024 //设置 SO_RCVBUF 套接字值 }

創建一個 dgram.Socket 對象

1 2
static DgramSocket dgram.createSocket(Object opts, Function callback);

調用參數:

  • opts: Object,
  • callback: Function, 為'message' 事件添加一個監聽器。

返回結果:

opts 允許的選項是:

1 2 3 4 5 6 7
{ "type": "udp4" | "udp6", // 必填 "reuseAddr": true | false, // 若设置为 true,socket.bind() 则会重用地址,即时另一个进程已经在其上面绑定了一个套接字。 默认是 false "ipv6Only": true | false, // 若设置为 true,socket.bind() 将只接收 IPv6 的数据包。 默认是 false "recvBufferSize": ###, // 设置 SO_RCVBUF 套接字值 "sendBufferSize": ### //设置 SO_RCVBUF 套接字值 }

創建一個 dgram.Socket 對象

1
static DgramSocket dgram.createSocket(String type);

調用參數:

  • type: String, 套接字族,'udp4' 或'udp6'。

返回結果:


創建一個 dgram.Socket 對象

1 2
static DgramSocket dgram.createSocket(String type, Function callback);

調用參數:

  • type: String, 套接字族,'udp4' 或'udp6'。
  • callback: Function, 為'message' 事件添加一個監聽器。

返回結果: