Node.js 的 dgram
模塊能夠方便的建立udp服務,,如下是使用 dgram模塊建立的udp服務和客戶端的一個簡單例子。javascript
var dgram = require('dgram'); //建立 udp server var udp_server = dgram.createSocket('udp4'); udp_server.bind(5678); // 綁定端口 // 監聽端口 udp_server.on('listening', function () { console.log('udp server linstening 5678.'); }) //接收消息 udp_server.on('message', function (msg, rinfo) { strmsg = msg.toString(); udp_server.send(strmsg, 0, strmsg.length, rinfo.port, rinfo.address); //將接收到的消息返回給客戶端 console.log(`udp server received data: ${strmsg} from ${rinfo.address}:${rinfo.port}`) }) //錯誤處理 udp_server.on('error', function (err) { console.log('some error on udp server.') udp_server.close(); })
var dgram = require('dgram'); var udp_client = dgram.createSocket('udp4'); udp_client.on('close',function(){ console.log('udp client closed.') }) //錯誤處理 udp_client.on('error', function () { console.log('some error on udp client.') }) // 接收消息 udp_client.on('message', function (msg,rinfo) { console.log(`receive message from ${rinfo.address}:${rinfo.port}:${msg}`); }) //定時向服務器發送消息 setInterval(function(){ var SendBuff = 'hello 123.'; var SendLen = SendBuff.length; udp_client.send(SendBuff, 0, SendLen, 5678, '172.30.20.10'); },3000);