日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

node.js 实现udp传输_Node.js实战15:通过udp传输文件。

發布時間:2024/9/27 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 node.js 实现udp传输_Node.js实战15:通过udp传输文件。 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文將要寫一個udp服務器,和一個udp客戶端,并實現客戶端發送文件給服務器。

服務器端

代碼如下:var dgram = require("dgram");

server();

function server(){

var socket = dgram.createSocket("udp4");

socket.on("message",function(msg,rinfo){

process.stdout.write(msg.toString());

});

socket.on("listening",function(){

console.log("server ready:",socket.address());

});

socket.bind(8000);

}

代碼解讀:

1、dgram是nodejs的內置模塊,提供了 UDP 數據包 socket 的實現。

2、server()函數提供了監聽和消息響應方法,當接收到數據時,會進行輸出顯示。

客戶端

代碼如下:var dgram = require("dgram");

var fs = require("fs");

client();

function client(){

//通過流讀取文件內容

var inStream = fs.createReadStream("./file.txt");

inStream.on("readable",function(){

send();

});

function send(){

var message = inStream.read(16);

var socket = dgram.createSocket("udp4");

//沒有內容了?關閉連接

if(!message){

return socket.unref();

}

//連接本地8000端口

socket.send(message,0,message.length,8000,"127.0.0.1",function(err,bytes){

send();

});

}

}

代碼解讀:

1、客戶端完成兩項工作:讀取文件file.txt、向服務器發送;

2、讀取是通過流進行的,讀取后即進行發送,當讀取完成時,關閉socket。

file.txt文件內容如下:jshaman.com is a web,used for obfuscate js file.

執行效果如下:

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的node.js 实现udp传输_Node.js实战15:通过udp传输文件。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。