HTML5離線Web應(yīng)用概述
時(shí)間:2023-07-21 05:30:01 | 來源:網(wǎng)站運(yùn)營
時(shí)間:2023-07-21 05:30:01 來源:網(wǎng)站運(yùn)營
HTML5離線Web應(yīng)用概述:
在Web應(yīng)用中使用緩存的原因之一是為了支持離線應(yīng)用。在全球互聯(lián)的時(shí)代,離線應(yīng)用仍有其實(shí)用價(jià)值。當(dāng)無法上網(wǎng)的時(shí)候,你會(huì)做什么呢?你可能會(huì)說如今網(wǎng)絡(luò)無處不在,而且非常穩(wěn)定,不存在沒有網(wǎng)絡(luò)的情況。但事實(shí)果真如此嗎?下面這些問題,你考慮到了嗎?
我們乘坐火車過隧道的時(shí)候信號好嗎?
我們使用移動(dòng)網(wǎng)絡(luò)設(shè)備的信號好嗎?
我們要去給客戶做演示的時(shí)候,一定能有信號嗎?
越來越多的應(yīng)用移植到了Web上,我們傾向于認(rèn)為用戶擁有24小時(shí)不間斷的網(wǎng)絡(luò)連線。但事實(shí)上,網(wǎng)絡(luò)連接中斷時(shí)有發(fā)生,例如,在乘坐飛機(jī)的情況下,可預(yù)見的中斷時(shí)間一次就可能達(dá)到好幾個(gè)小時(shí)。
間斷性的網(wǎng)絡(luò)連接一直是網(wǎng)絡(luò)計(jì)算系統(tǒng)致命的弱點(diǎn)。
如果應(yīng)用程序依賴于與遠(yuǎn)程主機(jī)的通信,而這些主機(jī)又無法連接時(shí),用戶就無法正常使用應(yīng)用程序了。
不過當(dāng)網(wǎng)絡(luò)連接正常時(shí),Web應(yīng)用程序可以保證及時(shí)更新,因?yàn)橛脩裘看问褂茫瑧?yīng)用程序都會(huì)從遠(yuǎn)程位置更新加載相關(guān)數(shù)據(jù)。
如果應(yīng)用程序只需要偶爾進(jìn)行網(wǎng)絡(luò)通信,那么只要在本地存儲(chǔ)了應(yīng)用資源,無論是否連接網(wǎng)絡(luò)它都可用。
隨著完全依賴于瀏覽器的設(shè)備的出現(xiàn),Web應(yīng)用程序在不穩(wěn)定的網(wǎng)絡(luò)狀態(tài)下還能夠持續(xù)工作就變得更加重要。
在這方面,不需要持續(xù)連接網(wǎng)絡(luò)的桌面應(yīng)用程序歷來被認(rèn)為比Web應(yīng)用程序更有優(yōu)勢。
HTML5的緩存控制機(jī)制綜合了Web應(yīng)用和桌面應(yīng)用兩者的優(yōu)勢:
基于Web技術(shù)構(gòu)建的Web應(yīng)用程序,可在瀏覽器中運(yùn)行并在線更新,也可在脫機(jī)情況下使用。
然而,因?yàn)槟壳暗腤eb服務(wù)器不為脫機(jī)應(yīng)用程序提供任何默認(rèn)的緩存行為,所以要想使用這一新的離線應(yīng)用功能,必須在應(yīng)用中明確聲明。
HTML5的離線應(yīng)用緩存使得在無網(wǎng)絡(luò)連接狀態(tài)下運(yùn)行應(yīng)用程序成為可能。這類應(yīng)用程序用處很多,如在書寫電子郵件草稿時(shí)就無須連接互聯(lián)網(wǎng)。
HTML5中引入了離線應(yīng)用緩存,有了它Web應(yīng)用程序就可以在沒有網(wǎng)絡(luò)連接的情況下運(yùn)行。
應(yīng)用程序開發(fā)人員可以指定HTML5應(yīng)用程序中,具體哪些資源(HTML、CSS、JavaScript和圖像)脫機(jī)時(shí)可用。離線應(yīng)用的適用場景很多。