Nodejs实现的一个简单udp广播服务器、客户端
nodejs发送udp广播还是蛮简单的,我们先写个服务器用于接收广播数据,代码如下:
var dgram = require("dgram");
var server = dgram.createSocket("udp4");
server.on("error", function (err) {
console.log("server error:\n" + 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了。相关阅读:
详解C语言中的符号常量、变量与算术表达式
Java编程中利用InetAddress类确定特殊IP地址的方法
ThinkPHP模板判断输出Defined标签用法详解
Asp.net中时间格式化的6种方法详细总结
删除sqlserver数据库日志和没有日志的数据库恢复办法
php获取文件内容最后一行示例
Linux中安装使用http_load对服务器进行压力测试的教程
php时间戳转换的示例
css常用代码分享(css圆角代码、渐变、密码框)
在ubuntu14.04下使用网页版qq的方法图文介绍
在jsp页面如何获得url参数
Win10休眠文件hiberfil.sys怎么彻底删除?
Javascript基础教程之数据类型 (布尔型 Boolean)
巧用jQuery选择器提高写表单效率的方法