新聞中心
這篇文章給大家介紹怎么在Html5中實(shí)現(xiàn)應(yīng)用程序緩存,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
一、作用
離線瀏覽 - 根據(jù)文件規(guī)則把資源緩存在本地,脫機(jī)依然能夠訪問(wèn)資源,聯(lián)網(wǎng)會(huì)直接使用緩存在本地的文件。優(yōu)化加載速度,節(jié)約服務(wù)器資源。
二、適用場(chǎng)景
正如 manifest 英譯的名字:離線應(yīng)用程序緩存,這項(xiàng)功能是設(shè)計(jì)給會(huì)有離線場(chǎng)景的應(yīng)用來(lái)使用,例如:需要離線使用的手機(jī)APP/H5,亦或是PC端的純靜態(tài)頁(yè)面。
三、問(wèn)題
1.服務(wù)器資源更新后顯示滯后需要多刷新一次頁(yè)面
首次在載入頁(yè)面時(shí),瀏覽器會(huì)判斷是否引入了 manifest,若檢測(cè)到引入,則下載并按文件規(guī)則緩存資源。
再次載入頁(yè)面時(shí),便會(huì)根據(jù) manifest 中規(guī)定的緩存文件使用本地緩存而不是請(qǐng)求服務(wù)器資源。
當(dāng) manifest 文件更新時(shí),頁(yè)面加載已經(jīng)進(jìn)行,但是緩存更新尚未完成,便會(huì)先使用舊 manifest 所緩存的文件,同時(shí)瀏覽器會(huì)將新的 manifest 文件里的緩存文件下載下來(lái),若想看到新的靜態(tài)資源需要刷新下頁(yè)面重新加載一次。
2.全量加載
當(dāng) manifest 文件更新時(shí),所有的資源都要全部被下載一次,并且其中一個(gè)出現(xiàn)異常會(huì)導(dǎo)致整個(gè) manifest 運(yùn)行異常。
3.W3C標(biāo)準(zhǔn)及瀏覽器支持
作為 H5 的新屬性,初衷是用來(lái)構(gòu)造離線應(yīng)用的,緩存網(wǎng)站資源的話原本瀏覽器的緩存機(jī)制(304)已經(jīng)很好了,沒(méi)必要再使用 manifest 做緩存;實(shí)際上因?yàn)槭褂梅错懖⒉缓?,W3C正在廢棄 manifest。
四、使用方法
首先在標(biāo)簽 中指定 manifest 配置文件。
配置文件 manifest.appcache。
CACHE MANIFEST # 井號(hào)備注,這邊可以放版本更新時(shí)間,修改備注算更新 manifest 文件 CACHE: # 首次下載 CACHE 后列出來(lái)的文件后緩存到本地。 /favicon.ico /main.css NETWORK: # NETWORK 下的文件不可被緩存,必須要與服務(wù)器連接。 login.php FALLBACK: # 一行放兩個(gè)路徑,第一個(gè)是訪問(wèn)資源,第二個(gè)是替補(bǔ);當(dāng)無(wú)法訪問(wèn)前一個(gè)資源時(shí),用后一個(gè)資源代替之。 /cat/ /404.html
關(guān)于怎么在Html5中實(shí)現(xiàn)應(yīng)用程序緩存就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
網(wǎng)站標(biāo)題:怎么在Html5中實(shí)現(xiàn)應(yīng)用程序緩存-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://biofuelwatch.net/article/dhdsij.html