首頁常見問題正文

Web前端知識(shí)培訓(xùn):移動(dòng)Web離線應(yīng)用

更新時(shí)間:2022-07-28 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  過去很長一段時(shí)間里,瀏覽器端的應(yīng)用程序無法完全與APP相媲美,一個(gè)重要的原因在于,如果斷了網(wǎng),瀏覽器端的程序就無法運(yùn)行,所有的工作都必須停止,而HTML5的離線應(yīng)用功能,改變了這一現(xiàn)狀。

  HTML5使用Application Cache接口提供應(yīng)用程序緩存技術(shù),這意味著Web應(yīng)用可進(jìn)行緩存,并在沒有網(wǎng)絡(luò)的情況下輕松地創(chuàng)建離線應(yīng)用。Application Cache是從瀏覽器的緩存中分出來的一塊緩存區(qū),要想在這塊緩存中保存數(shù)據(jù),可以使用一個(gè)描述文件列出要下載和緩存的資源,并且通過該緩存的狀態(tài)手動(dòng)更新資源文件的緩存。離線緩存功能的使用有一個(gè)前提,就是需要訪問的Web頁面至少被在線訪問過一次。

  使用Application Cache緩存接口的優(yōu)勢(shì)如下:

  (1)實(shí)現(xiàn)離線瀏覽:用戶可在離線時(shí)瀏覽完整的網(wǎng)站。

  (2)更快的加載速度:緩存資源為本地資源,因此加載速度較快。

  (3)服務(wù)器負(fù)載更少:瀏覽器只會(huì)從發(fā)生了更改的服務(wù)器下載資源。

  那么,離線應(yīng)用的存儲(chǔ)方式和之前講解的Web Storage有什么區(qū)別?localStorage支持String類型的數(shù)據(jù)的持久化,是否也可以做離線緩存?

  Web Storage主要用于瀏覽器緩存,而Application Cache用于存儲(chǔ)靜態(tài)資源,其中l(wèi)ocalStorage在某個(gè)場(chǎng)景下可用于離線存儲(chǔ),例如,向客戶端保存用戶名和密碼,但是相比Application Cache而言有局限性。對(duì)于離線應(yīng)用,需要緩存的不僅是字符串,還有一些應(yīng)用程序、圖片、CSS文件等,實(shí)現(xiàn)這些功能,使用Application Cache更合適。

  另外,離線存儲(chǔ)與瀏覽器緩存的區(qū)別在于:離線存儲(chǔ)為Web提供服務(wù),而瀏覽器緩存只緩存單個(gè)頁面;離線存儲(chǔ)可以指定需要緩存的文件,瀏覽器緩存無法指定。

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!