NodeJs簡明教程(10)
NodeJs簡明教程はゼロからNodeJs関連の知識を学び、JS開発者を支援して全スタック開発技術スタックを構築します.
注意して、より多くの
本論文はNodeJs簡明教程の第10編で、NodeJs dgramモジュール(
何がUDPですか
Internetプロトコルセットは、ユーザデータグラムプロトコル(UDP、User Datagram Protocol)と呼ばれる接続されていない転送プロトコルをサポートする.UDPはアプリケーションに接続を確立することなくパッケージのIPデータグラムを送信する方法を提供しています.RFC 768はUDPを記述している.
NodeJsは type に対応しています. calback Echoサービス開発
server.js
client.js端末は を出力する.端末は を出力する.サービス端末出力: おわりに
NodeJs UDPサーバーとクライアントの開発はここで終わりますが、UDPを使う場合、パケットの確認、流量制御などの操作はプログラマが手動で行う必要があります.この面は確かに複雑です.特に要求がない場合はTCPを使えばいいです.
注意して、より多くの
NodeJs
を取得する.本論文はNodeJs簡明教程の第10編で、NodeJs dgramモジュール(
UDP /
)に関する基本的な操作を紹介します.何がUDPですか
Internetプロトコルセットは、ユーザデータグラムプロトコル(UDP、User Datagram Protocol)と呼ばれる接続されていない転送プロトコルをサポートする.UDPはアプリケーションに接続を確立することなくパッケージのIPデータグラムを送信する方法を提供しています.RFC 768はUDPを記述している.
NodeJsは
dgram
を使用してUDP /
関連機能を実現する.dgram.createSocket
は、ソケットオブジェクトを作成するために使用され、このセット・インターフェース
または
のデータに基づくことができる.この方法の原型は以下の通りである.dgram.createSocket(type[, callback])
socketタイプ.udp4
またはudp6
に対応して、ipv4
およびipv6
がメッセージを受信したときのコールバック関数server.js
const dgram = require('dgram');
const socket = dgram.createSocket('udp4');
socket.on('error', function(err) { // socket
console.log(' ', err);
socket.close();
});
socket.on('message',function(msg,sender) { //
console.log('%s:%d => %s', sender.address,sender.port,msg.toString()); //
socket.send('socket: '+msg.toString(),sender.port,sender.address,function(err) { //
if(err) {
console.log(' %s:%d : %s',sender.address,sender.port,err.message);
return;
}
});
});
socket.bind(10000, function() { // UDP
console.log(' %s:%d', socket.address().address, socket.address().port);
});
Echoクライアント開発
接続サーバはtelnet
を使用しているので、本明細書で対応するクライアントはNodeJs開発を使用する必要がある.client.js
const dgram = require('dgram');
const socket = dgram.createSocket('udp4'); // socket
socket.on('message', function(msg,sender) { //
console.log(' %s:%d :%s',sender.address,sender.port,msg.toString());
socket.close();
});
socket.send('hello',10000,function(err) { //
if(err) {
console.log(' ', err);
return;
}
console.log(' ');
});
実行TCP
を実行し、 0.0.0.0:10000
node server.js
を実行し、
127.0.0.1:10000 :server: hello
127.0.0.1:50577 => hello
NodeJs UDPサーバーとクライアントの開発はここで終わりますが、UDPを使う場合、パケットの確認、流量制御などの操作はプログラマが手動で行う必要があります.この面は確かに複雑です.特に要求がない場合はTCPを使えばいいです.