Html5離線緩存詳細講解


實例 - 完整的 Manifest 文件

  

  

 

 

1,什么是應用程序緩存(Application Cache)

  HTML5 引入了應用程序緩存,這意味着 web 應用可進行緩存,並可在沒有因特網連接時進行訪問。

  離線緩存:

    離線緩存可以將站點的一些文件緩存到本地,它是瀏覽器自己的一種機制,

    將需要的文件緩存下來,以便后期即使沒有連接網絡,被緩存的頁面也可以展示。

    即使有網絡,優先本地存儲的資源

2,應用程序緩存為應用帶來三個優勢:

  * 離線瀏覽 - 用戶可在應用離線時使用它們

    * 速度 - 已緩存資源加載得更快

    * 減少服務器負載 - 瀏覽器將只從服務器下載更新過或更改過的資源。

  * 【

    在沒有網絡的時候可以訪問到緩存的對應的站點頁面,包括html,js,css,img等等文件
    在有網絡的時候,瀏覽器也會優先使用已離線存儲的文件,返回一個200(from cache)頭。這跟HTTP的緩存使用策略是不同的
    資源的緩存可以帶來更好的用戶體驗,當用戶使用自己的流量上網時,本地緩存不僅可以提高用戶訪問速度,而且大大節約用戶的使用流量。
     】

3,如何實現離線緩存:

  a)Cache Manifest 基礎

    如需啟用應用程序緩存,請在文檔的<html> 標簽中包含 manifest 屬性:

      

    * 在需要緩存的html根節點上面添加屬性 manifest ,屬性值是一個 . appcache 文件;

    Appcache 是一個控制緩存文件

    * 在同目錄下創建demo.appcache 文件,幷添加配置項

  b)Manifest 文件

       manifest 文件是簡單的文本文件,它告知瀏覽器被緩存的內容(以及不緩存的內容)。

      manifest 文件可分為三個部分:

        CACHE MANIFEST - 在此標題下列出的文件將在首次下載后進行緩存

        NETWORK - 在此標題下列出的文件需要與服務器的連接,且不會被緩存

        FALLBACK - 在此標題下列出的文件規定當頁面無法訪問時的回退頁面(比如 404 頁面)

      

      * CACHE MANIFEST

      第一行,CACHE MANIFEST,是必需的:

      CACHE MANIFEST

      /theme.css

      /logo.gif

      /main.js

      上面manifest 文件列出了三個資源:一個 CSS 文件,一個 GIF 圖像,一個 JavaScript 文件

 

      * NETWORK

      NETWORK:

      login.php

      可以使用星號來指示所有其他資源/文件都需要因特網連接:

      NETWORK:

      *

 

      * FALLBACK

      FALLBACK:

      /html/   /offline.html

      第一個 URI 是資源,第二個是替補。

4,更新緩存:

   一旦應用被緩存,它就會保持緩存直到發生下列情況:

    用戶清空瀏覽器緩存

    manifest 文件被修改

    由程序來更新應用緩存

 5,在服務器端將.appcache文件的mime類型配置成 text/cache-manifest

  下面以phpstudy為例

   

   打開,mime.types ,在后面添加----

   

6,在網頁中打開

    

 

 

 

以 "#" 開頭的是注釋行


免責聲明!

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



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