主要步骤
- 引入
dgram
模块:dgram
模块是Node.js内置的用于UDP网络通信的模块。
- 创建UDP套接字:使用
dgram.createSocket()
方法创建一个UDP套接字实例。
- 设置广播选项:通过调用套接字的
setBroadcast(true)
方法,允许套接字发送广播消息。
- 发送广播消息:使用
send()
方法向指定的广播地址和端口发送消息。
- 处理发送错误:为
send
操作添加错误处理,确保程序健壮性。
- 关闭套接字:在不需要使用套接字时,调用
close()
方法关闭它。
关键代码示例
const dgram = require('dgram');
// 创建UDP套接字
const socket = dgram.createSocket('udp4');
// 设置广播选项
socket.setBroadcast(true);
// 要发送的消息
const message = Buffer.from('这是一条广播消息');
const port = 12345;
const broadcastAddress = '255.255.255.255';
// 发送广播消息
socket.send(message, 0, message.length, port, broadcastAddress, (err) => {
if (err) {
console.error('发送广播消息时出错:', err);
} else {
console.log('广播消息已发送');
}
// 关闭套接字
socket.close();
});
// 监听错误事件
socket.on('error', (err) => {
console.error('套接字错误:', err);
socket.close();
});