同事让我帮他测试下模块的udp通信,于是我用Nodejs搭了个测试。虽然他后来发现没法改模块指向服务器地址
1.Nodejs的UDP模块
Nodejs自带的模块
- 名称:dgram
- 文档:https://nodejs.org/api/dgram.html
2.服务端代码
const dgram = require('dgram');
const server = dgram.createSocket('udp4');
server.on('close',()=>{
console.log('socket已关闭');
});
server.on('error',(err)=>{
console.log(err);
});
server.on('listening',()=>{
console.log('socket正在监听中...');
});
server.on('message',(msg,rinfo)=>{
console.log(`receive message from ${rinfo.address}:${rinfo.port}`);
server.send('exit',rinfo.port,rinfo.address)
});
server.bind('1314');
3.测试工具
1)udp client
使用nc测试
yum install nc
使用命令(注意ip和端口之间是空格)
nc -vu {udp服务器ip} {端口}
image.png
网友评论