Heim  >  Artikel  >  Web-Frontend  >  Ein einfacher UDP-Broadcast-Server und -Client, implementiert von Nodejs_node.js

Ein einfacher UDP-Broadcast-Server und -Client, implementiert von Nodejs_node.js

WBOY
WBOYOriginal
2016-05-16 16:35:382289Durchsuche

Das Senden von UDP-Broadcasts in nodejs ist ganz einfach. Schreiben wir zunächst einen Server, um Broadcast-Daten zu empfangen:

Code kopieren Der Code lautet wie folgt:

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-Adresse = server.address();
console.log("Server hört zu"
Adresse.Adresse : „Adresse.Port);
});

server.bind(41234);

Schreiben Sie dann ein Client-Programm zum Senden von Broadcast-Nachrichten. Der Code lautet wie folgt:

Code kopieren Der Code lautet wie folgt:

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();
});

Hier ist zu beachten, dass socket.setBroadcast(true); aufgerufen werden muss, nachdem der Socket erfolgreich gebunden wurde, andernfalls wird ein Error: setBroadcast EBADF-Fehler gemeldet.

Das Senden von Broadcasts vom Client aus ist ganz einfach. Legen Sie einfach die zu sendenden Daten und den Port fest, und schon ist alles in Ordnung.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn