node靜態伺服器斷點續傳實現

2021-09-11 16:39:59 字數 382 閱讀 6924

當乙個伺服器支援range時,客戶端可以將需要傳送的內容分成很多份傳送給服務端,服務端可以每次接收部分內容。有了這樣的能力,遇到斷網的情況,我們可以在客戶端記錄下已經傳送的檔案範圍,網路恢復後再將剩餘部分傳送給服務端,這樣就實現了斷點續傳。

具體流程如下:

而伺服器會分如下兩種情況響應瀏覽器的請求:

getstream(req, res, filepath, statobj) 

}return fs.createreadstream(filepath, );

}複製**

在搭建node靜態伺服器過程中學習利用http1.1的range來實現斷點續傳功能

參考資料

伺服器是否支援斷點續傳

你可以通過以下的命令來測試一下。linux 測試伺服器是否支援斷點續傳 localhost wget s 2 1 grep accept ranges accept ranges bytes 這樣可以到最開始99位元組,結果如下圖 現在我們嘗試以下方式 完成後,test.jpg完全等於billboa...

實現HTTP斷點續傳

在http協議中,獲取資源可以使用get方法,但在使用get方法指定乙個資源後,會獲取到該資源的所有位元組。在http協議中,提供range屬性,可以指定獲取資源某一段資料。如使用telnet連線www.cz88.net 的80埠 會獲取如下資料 ht失去了跟主機的連線。在獲取的報文中,可以看到co...

symbian實現斷點續傳

斷點續傳的原理 假設伺服器網域名稱為wwww.sjtu.edu.cn,檔名為down.zip。仔細看一下就會發現多了一行range bytes 2000070 這一行的意思就是告訴伺服器down.zip這個檔案從2000070位元組開始傳,前面的位元組不用傳了。伺服器收到這個請求以後,返回的資訊如下...