Nodejs實現(xiàn)的一個簡單udp廣播服務器、客戶端
nodejs發(fā)送udp廣播還是蠻簡單的,我們先寫個服務器用于接收廣播數(shù)據(jù),代碼如下:
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);
然后寫個客戶端程序,發(fā)送廣播消息,代碼如下:
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成功后才能調(diào)用,否則會報Error: setBroadcast EBADF的錯誤。
客戶端發(fā)送廣播還是蠻簡單的,設置好需要發(fā)送的數(shù)據(jù)和端口等信息就OK了。
相關文章
Node.js 緩沖區(qū)(Buffer)模塊的方法及實例分析
在本篇文章里小編給大家整理了一篇關于Node.js 緩沖區(qū)(Buffer)模塊的方法及實例分析,對此有興趣的朋友們可以跟著學習下。2022-01-01Node.js 利用cheerio制作簡單的網(wǎng)頁爬蟲示例
本篇文章主要介紹了Node.js 利用cheerio制作簡單的網(wǎng)頁爬蟲示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-03-03nodejs結(jié)合socket.io實現(xiàn)websocket通信功能的方法
這篇文章主要介紹了nodejs結(jié)合socket.io實現(xiàn)websocket通信功能的方法,結(jié)合實例形式分析了nodejs結(jié)合socket.io實現(xiàn)websocket通信的具體步驟與相關操作技巧,需要的朋友可以參考下2018-01-01