html5引入了應用程式快取技術,意味著web應用可進行快取,並在沒有網路的情況下使用,通過建立cache manifest檔案,可以輕鬆的建立離線應用。
① 離線瀏覽
② 提公升頁面載入速度
③ 降低伺服器壓力
離線儲存技術
經過實踐我們認為localstorage應該儲存一些非關鍵性ajax資料,做錦上添花的事情;
而cookie只能儲存一小段文字(4096位元組);所以不能儲存大資料,這是cookie與上述快取技術的差異之一,而因為http是無狀態的,伺服器為了區分請求是否**於同乙個伺服器,需要乙個標識字串,而這個任務就是cookie完成的,這一段文字每次都會在伺服器與瀏覽器之間傳遞,以驗證使用者的許可權。
① 伺服器端需要維護乙個manifest清單
② 瀏覽器上只需要乙個簡單的設定即可
以例子做說明:
cache manifest首先我這裡報了乙個錯:cache:
# 需要快取的列表
# 不需要快取的
# 訪問快取失敗後,備用訪問的資源,第乙個是訪問源,第二個是替換檔案*.html /offline.html
這個錯誤的原因是:manifest 檔案需要配置正確的 mime-type,即 "text/cache-manifest"。必須在 web 伺服器上進行配置,不同的伺服器不一樣
這樣一來便可以離線應用了,這個時候就算斷網了,那些檔案依舊能訪問
manifest 檔案可分為三個部分:network - 在此標題下列出的檔案需要與伺服器的連線,且不會被快取
fallback - 在此標題下列出的檔案規定當頁面無法訪問時的回退頁面(比如 404 頁面)
如圖所示,html5定義了幾個事件點,但是我們一般不會主動使用js去操作什麼,大多數情況下,我們完全依賴瀏覽器的處理即可。
尺寸限制
如所示,兩個css檔案依舊超過了5m這個時候
如所示,style2已經不能快取了,這個會造成什麼問題呢?
一些問題
window.location.reload()
});比如我們將這裡**做乙個改變:
各個頁面統一管理自己的manifest清單,意思是a頁面配置了common.js,b頁面也配置了common.js,意思是a頁面更新後,b頁面的manifest不更改的話,b頁面依舊讀取的是老版本的檔案,這個有一定道理卻也有一定浪費,需要公共頁面做處理。
H5 快取的應用
可以使用 號來指示所有其他資源 檔案都需要網際網路連線 network 下面的 fallback 小節規定如果無法建立網際網路連線,則用 404.html 替代 jquery xuexi 目錄中的所有檔案 fallback jquery xuexi 404.html 以 開頭的是注釋行,請注意,ma...
H5離線快取
什麼是離線快取 離線快取可以將站點的一些檔案快取到本地,它是瀏覽器自己的一種機制,將需要的檔案快取下來,以便後期即使沒鏈結網路,被快取的頁面也可以展示 離線快取的優勢 提高使用者的訪問速度,節省流量 如何實現離線快取 內容為 cache manifest 1.0 版本號 這個注釋是給 開發者看的,代...
h5離線應用
在chorme瀏覽器下,可以訪問 http cache 位址 chrome cache 檢視兩者。需要注意的是,清單上的檔案路徑不能有錯,只要乙個有錯,所以檔案都不會離線儲存。第二步是,在需要離線的網頁的標籤上增加manifest屬性,指向上面的清單檔案。在chorme瀏覽器下,可以按f12開啟除錯...