Web 應用 程式 的 本地 快取 是 透過 每個 頁面 的 manifest 檔案 來 管理 的。 manifest 檔案 是一 個 簡單 文字 檔案, 在 該 檔案 中 以 清單 的 形式 列舉 了 需要 被 快取 或不 需要 被 快取 的 資源 檔案 的 檔案 名稱, 以及 這些 資源 檔案 的 訪問 路徑。 你 可 以為 每一個 頁面 單獨 指定 一個 manifest 檔案, 也可 以對 整個 Web 應用 程式 指定 一個 總的 manifest 檔案。 程式碼 清單 8- 1 為 manifest 檔案 的 一個 示例, 該 檔案 為 hello. html 網頁 的 manifest 檔案, 利用 示例 來 對 manifest 檔案 做 一個 詳細 介紹。
CACHE MANIFEST
# 2012-02-21 v1.0.0
NETWORK:
login.asp
FALLBACK:
/html5
/
404.html
CACHE:
hello.js
❑ 在 CACHE 類別 中指 定 需要 被 快取 在 本地 的 資源 檔案。 為 某個 頁面 指定 需要 本地 快取 的 資源 檔案 時, 不需 要把 這個 頁面 本身 指定 在 CACHE 類別 中, 因為 如果 一個 頁面 具有 manifest 檔案, 瀏覽器 會 自動 對這 個 頁面 進行 本地 快取。
❑ NETWORK 類 別為 顯 式 指定 不進 行 本地 快取 的 資源 檔案, 這些 資源 檔案 只有 當 客戶 端 與 伺服器 端 建立 連線 的 時候 才能 訪問。 本 示例 該類 別 中的“*” 為 萬用字元, 表示 沒有 在 本 manifest 檔案 中指 定的 資源 檔案 都不 進行 本地 快取。
❑ FALLBACK 類別 中的 每 行中 指定 兩個 資源 檔案, 第一個 資源 檔案 為 能夠 在 線 訪問 時 使用 的 資源 檔案, 第二個 資源 檔案 為 不 能在 線 訪問 時 使用 的 備用 資源 檔案。 每個 類別 都是 可選 的。 但是 如果 檔案 開頭 沒有 指定 類別 而 直接 書寫 資源 檔案 的 時候, 瀏覽器 把這 些 資源 檔案 視為 CACHE 類別, 直到 看見 檔案 中 第一個 被 書寫 出來 的 類別 為止。 例如, 程式碼 清單 8- 2 中, 瀏覽器 會把 NETWORK 類別 之前 的 檔案 都 視為 CACHE 類別。
Web 應用 程式 的 本地 快取 是 透過 每個 頁面 的 manifest 檔案 來 管理 的。 manifest 檔案 是一 個 簡單 文字 檔案, 在 該 檔案 中 以 清單 的 形式 列舉 了 需要 被 快取 或不 需要 被 快取 的 資源 檔案 的 檔案 名稱, 以及 這些 資源 檔案 的 訪問 路徑。 你 可 以為 每一個 頁面 單獨 指定 一個 manifest 檔案, 也可 以對 整個 Web 應用 程式 指定 一個 總的 manifest 檔案。 程式碼 清單 8- 1 為 manifest 檔案 的 一個 示例, 該 檔案 為 hello. html 網頁 的 manifest 檔案, 利用 示例 來 對 manifest 檔案 做 一個 詳細 介紹。
CACHE MANIFEST
# 2012-02-21 v1.0.0
NETWORK:
login.asp
FALLBACK:
/html5
/
404.html
CACHE:
hello.js
❑ 在 CACHE 類別 中指 定 需要 被 快取 在 本地 的 資源 檔案。 為 某個 頁面 指定 需要 本地 快取 的 資源 檔案 時, 不需 要把 這個 頁面 本身 指定 在 CACHE 類別 中, 因為 如果 一個 頁面 具有 manifest 檔案, 瀏覽器 會 自動 對這 個 頁面 進行 本地 快取。
❑ NETWORK 類 別為 顯 式 指定 不進 行 本地 快取 的 資源 檔案, 這些 資源 檔案 只有 當 客戶 端 與 伺服器 端 建立 連線 的 時候 才能 訪問。 本 示例 該類 別 中的“*” 為 萬用字元, 表示 沒有 在 本 manifest 檔案 中指 定的 資源 檔案 都不 進行 本地 快取。
❑ FALLBACK 類別 中的 每 行中 指定 兩個 資源 檔案, 第一個 資源 檔案 為 能夠 在 線 訪問 時 使用 的 資源 檔案, 第二個 資源 檔案 為 不 能在 線 訪問 時 使用 的 備用 資源 檔案。 每個 類別 都是 可選 的。 但是 如果 檔案 開頭 沒有 指定 類別 而 直接 書寫 資源 檔案 的 時候, 瀏覽器 把這 些 資源 檔案 視為 CACHE 類別, 直到 看見 檔案 中 第一個 被 書寫 出來 的 類別 為止。 例如, 程式碼 清單 8- 2 中, 瀏覽器 會把 NETWORK 類別 之前 的 檔案 都 視為 CACHE 類別。