HTML5存儲--離線存儲


離線存儲技術

HTML5提出了兩大離線存儲技術:localstorage與Application Cache,兩者各有應用場景;傳統還有離線存儲技術為Cookie。

經過實踐我們認為localstorage應該存儲一些非關鍵性ajax數據,做錦上添花的事情;

Application Cache用於存儲靜態資源,仍然是干錦上添花的事情;

而cookie只能保存一小段文本(4096字節);所以不能存儲大數據,這是cookie與上述緩存技術的差異之一,而因為HTTP是無狀態的,服務器為了區分請求是否來源於同一個服務器,需要一個標識字符串,而這個任務就是cookie完成的,這一段文本每次都會在服務器與瀏覽器之間傳遞,以驗證用戶的權限。

所以Application Cache的應用場景不一樣,所以使用也不一致。

什么是Application Cache

HTML5引入了應用程序緩存技術,意味着web應用可進行緩存,並在沒有網絡的情況下使用,通過創建cache manifest文件,可以輕松的創建離線應用。

Application Cache帶來的三個優勢是:

① 離線瀏覽

② 提升頁面載入速度

③ 降低服務器壓力

而且主要瀏覽器皆以支持Application Cache,就算不支持也不會對程序造成什么影響

 

Application Cache離線存儲的應用是什么

乘坐飛機、手機信號弱、去演講的時候可能沒有網絡,這個時候可以使用離線存儲

檢測網絡是否在線

既然我們知道Application Cache是用於當網絡離線的時候讀取緩存在客戶端的文件的,那怎么檢測網絡是否在線呢?

檢測網絡OnLine屬性如下:

if (navigator.onLine == true){
    alert("正常上網")
}
else{
   alert("無法連接網絡")
}

 

 

離線存儲使用方法

瀏覽器端  

1.瀏覽器上只需要一個簡單的設置即可,在文檔的 <html> 標簽中包含 manifest 屬性

<html manifest="demo.appcache">

文件擴展名建議為:.appcache。首次訪問網頁緩存在本地的文件,如果下一次如果沒有網,就不走服務器了,就取這個文件清單了

 

服務器端

1.在服務器添加配置正確的 MIME-type,即 "text/cache-manifest"。必須在 web 服務器上進行配置。

 

現在應用的還不是特別的廣泛,因為大部分網站都有交互的功能,一但沒有交互功能,網站就成了純展示,意義就不大了。

瀏覽器端.appcache文件清單使用詳解

CACHE MANIFEST

CACHE:
# 需要緩存的文件列表
style1.css
1.jpg
01.js
http://localhost/applicationcache/02.js
http://localhost/applicationcache/zepto.js

NETWORK:
# 不需要緩存的
4.jpg

FALLBACK:
# 訪問緩存失敗后,備用訪問的資源,第一個是訪問源,第二個是替換文件*.html /offline.html
2.jpg/3.jpg

 

 無網絡后演示圖:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM