dgram
dgram数据报提供了UDP数据包socket的实现。
const dgram = require('dgram');
创建dgram.Sockrt的新实例,不使用new
const server = dgram.createSocket('udp4');
error发生错误时触发
server.on('error', (err) => {
console.log(`服务器异常:\n${err.stack}`);
关闭一个socket之后触发,一旦触发,则这个socket上将不会触发新的message事件。
server.close();
});
当有新的数据包被socket接收时,message事件会被触发
server.on('message', (msg, rinfo) => {
console.log(`服务器接收到来自 ${rinfo.address}:${rinfo.port} 的 ${msg}`);
});
开始监听数据包信息时触发
server.on('listening', () => {
const address = server.address();
console.log(`服务器监听 ${address.address}:${address.port}`);
});
server.bind(41234);
// 服务器监听 0.0.0.0:41234
方法
- addMembership()
添加组播成员; - dropMembership()
删除组播成员; - address()
返回socket地址信息对象,UDP socket对象包含add