H5離線存儲

離線存儲

  1. H5引入了應用程序緩存,這意味着web應用可進行緩存,並可在沒有因特網連接的時候進行訪問,輕鬆創建web應用的離線版本
  2. 離線應用和網頁緩存都是爲了更好的緩存各種文件以提高讀取速度
  3. 離線於緩存對網絡環境的要求
    1. 緩存依賴於網絡的存在,離線在離線狀態下仍然可以
    2. 緩存主要緩存當前頁面的內容,離線主要走緩存,只要設置緩存該文件的頁面,都能在離線狀態下讀取該文件
  4. 離線存儲的意義:最突出的功能就是在沒有網絡的環境下web應用仍然可以正常運行,減少訪問互聯網過程中的流量消耗

離線存儲的實現步驟

  1. 服務器設置頭信息:- AddType:text/cache-manifest manifest,例如Apache服務器,找到{Apache_home}/conf/mine.types這個文件,並加入前面那行代碼,如果是免安裝版則是在web.xml中進行配置,
    <mime-mapping><extension>manifest</extension><mime-type>text/cache-manifest</mime-type></mime-mapping>
  2. html不籤加:- manifest=“xxx.manifest”
  3. 寫manifest文件(離線的清單列表)
  4. manifest文件是簡單的文本文件,它告知瀏覽器被緩存的內容(以及不緩存的內容),manifest文件可分爲三個部分:
    1. CACHE MANIFEST:在此標題下列出文件將在首次加載後進行緩存
    2. NETWORK:在此標題下列出的文件需要與服務器連接,且不會被緩存
    3. FALLBACK:在此標題下列出的文件規定當頁面無法訪問時候的回退頁面比如(404頁面)
  5. 瀏覽器©與服務器(S)交互的過程,在有網絡的情況下,C端訪問S端,S端把頁面給C端的同時也會根據緩存列表清單,把需要緩存的內容存放進去,下一次C端請求S端的時候,先去緩存中查看,再去S端查找

離線應用的特性

  1. 沒網的時候,可以正常訪問
  2. 有了緩存,可以快速響應頁面
  3. 可以降低服務器資源帶寬
  4. 緩存的可以是任何文件
  5. 需要緩存的頁面加上如下配置:
<html lang="en" manifest="fc.manifest"></html>
  1. 設置manifest文件
CACHE MANIFEST
# 常常寫版本號、時間戳、md5等方便觸發緩存更新
# 需要緩存的文件,無論在線與否,都會優先從緩存中獲取
CACHE:
dilireba.jpg
index.html
# 不緩存的文件,無論緩存是否更新,都會從服務器端獲取
NETWORK:
index.css

manifest文件更新機制

  1. 用戶清空瀏覽器緩存
  2. manifest文件被修改,即使是添加了註釋也依然會觸發更新
  3. 可以編寫代碼來更新,window.applicationCache
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章