Nodejs实现的一个简单udp广播服务器、客户端
作者:bea
nodejs发送udp广播还是蛮简单的,我们先写个服务器用于接收广播数据,代码如下: 代码如下: var dgram = require("dgram"); var server = dgram.createSocket("udp4"); server.on("error", function (err) { console.log("server error:" + err.stack); server.close(); }); server.on("me
nodejs发送udp广播还是蛮简单的,我们先写个服务器用于接收广播数据,代码如下:
代码如下:
var dgram = require("dgram");
var server = dgram.createSocket("udp4");
server.on("error", function (err) { console.log("server error:
" + err.stack); server.close(); });
server.on("message", function (msg, rinfo) { console.log("server got: " + msg + " from " + rinfo.address + ":" + rinfo.port); });
server.on("listening", function () { var address = server.address(); console.log("server listening " + address.address + ":" + address.port); });
server.bind(41234);
然后写个客户端程序,发送广播消息,代码如下:
代码如下:
var dgram = require("dgram");
var socket = dgram.createSocket("udp4"); socket.bind(function () { socket.setBroadcast(true); });
var message = new Buffer("Hi"); socket.send(message, 0, message.length, 41234, '255.255.255.255', function(err, bytes) { socket.close(); });
这里需要注意的是socket.setBroadcast(true);必须在绑定socket成功后才能调用,否则会报Error: setBroadcast EBADF的错误。
客户端发送广播还是蛮简单的,设置好需要发送的数据和端口等信息就OK了。
有用 | 无用
代码如下:
var dgram = require("dgram");
var server = dgram.createSocket("udp4");
server.on("error", function (err) { console.log("server error:
" + err.stack); server.close(); });
server.on("message", function (msg, rinfo) { console.log("server got: " + msg + " from " + rinfo.address + ":" + rinfo.port); });
server.on("listening", function () { var address = server.address(); console.log("server listening " + address.address + ":" + address.port); });
server.bind(41234);
然后写个客户端程序,发送广播消息,代码如下:
代码如下:
var dgram = require("dgram");
var socket = dgram.createSocket("udp4"); socket.bind(function () { socket.setBroadcast(true); });
var message = new Buffer("Hi"); socket.send(message, 0, message.length, 41234, '255.255.255.255', function(err, bytes) { socket.close(); });
这里需要注意的是socket.setBroadcast(true);必须在绑定socket成功后才能调用,否则会报Error: setBroadcast EBADF的错误。
客户端发送广播还是蛮简单的,设置好需要发送的数据和端口等信息就OK了。
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- 基于NodeJS的前后端分离的思考与实践(二)模版探索
- 基于NodeJS的前后端分离的思考与实践(一)全栈式开发
- 前端轻量级MVC框架CanJS详解
- alert出数组中的随即值代码
- jquery得到iframe src属性值的方法
- jquery获得同源iframe内body下标签的值的方法
- jquery 实现两Select 标签项互调示例代码
- $("").click与onclick的区别示例介绍
- Jquery设置attr的disabled属性控制某行显示或者隐藏
- javascritp添加url参数将参数加入到url中
- jQuery将多条数据插入模态框的示例代码
- jQuery如何获取同一个类标签的所有值(默认无法获取)
- jquery动态分页效果堪比时光网
- 浅析js预加载/延迟加载
- 深入了解Node.js中的一些特性
- 从JQuery源码分析JavaScript函数的apply方法与call方法
- JS小游戏之仙剑翻牌源码详解
- JS小游戏之宇宙战机源码详解
- Nodejs Post请求报socket hang up错误的解决办法