1.應(yīng)用程序緩存(Application Cache):
通過使用manifest并配置文件列表
應(yīng)用程序緩存為應(yīng)用帶來三個(gè)優(yōu)勢(shì):
?離線瀏覽 - 用戶可在應(yīng)用離線時(shí)使用它們
?速度 - 已緩存資源加載得更快
?減少服務(wù)器負(fù)載 - 瀏覽器將只從服務(wù)器下載更新過或更改過的資源。
2.如何實(shí)現(xiàn)
2.1服務(wù)器配置步驟如下:
在服務(wù)器上添加MIME TYPE支比如 Apache 中可在 .htaccess 中添加:AddType text/cache-manifest manifest
2.2創(chuàng)建Manifest 文件
manifest 文件是簡(jiǎn)單的文本文件,它告知瀏覽器被緩存的內(nèi)容(以及不緩存的內(nèi)容)。
manifest 文件可分為三個(gè)部分:
l CACHE MANIFEST - 在此標(biāo)題下列出的文件將在首次下載后進(jìn)行緩存
l NETWORK - 在此標(biāo)題下列出的文件需要與服務(wù)器的連接,且不會(huì)被緩存
l FALLBACK - 在此標(biāo)題下列出的文件規(guī)定當(dāng)頁(yè)面無法訪問時(shí)的回退頁(yè)面(比如 404 頁(yè)面)
CACHE MANIFEST
第一行,CACHE MANIFEST,是必需的:
2.2.1CACHE MANIFEST
/theme.css
/logo.gif
/main.js
上面的 manifest 文件列出了三個(gè)資源:一個(gè) CSS 文件,一個(gè) GIF 圖像,以及一個(gè) JavaScript 文件。當(dāng) manifest 文件加載后,瀏覽器會(huì)從網(wǎng)站的根目錄下載這三個(gè)文件。然后,無論用戶何時(shí)與因特網(wǎng)斷開連接,這些資源依然是可用的。
2.2.2NETWORK
下面的 NETWORK 小節(jié)規(guī)定文件 "login.asp" 永遠(yuǎn)不會(huì)被緩存,且離線時(shí)是不可用的:
NETWORK:
login.asp
可以使用星號(hào)來指示所有其他其他資源/文件都需要因特網(wǎng)連接:
NETWORK:
*
2.2.3FALLBACK
下面的 FALLBACK 小節(jié)規(guī)定如果無法建立因特網(wǎng)連接,則用 "offline.html" 替代 /html5/ 目錄中的所有文件:
FALLBACK:
/html5/ /404.html
3.更新緩存
一旦應(yīng)用被緩存,它就會(huì)保持緩存直到發(fā)生下列情況:
l 用戶清空瀏覽器緩存
l manifest 文件被修改
l 由程序來更新應(yīng)用緩存
4.Chrome瀏覽器來測(cè)試緩存是否成功
在Chorme瀏覽器中輸入緩存頁(yè)面的網(wǎng)址
使用Chrome的chrome://cache/命令查看