一種實(shí)現(xiàn)離線應(yīng)用的方法及裝置制造方法
【專利摘要】本發(fā)明適用于計(jì)算機(jī)【技術(shù)領(lǐng)域】,提供了一種實(shí)現(xiàn)離線應(yīng)用的方法及裝置,所述方法包括:當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax請(qǐng)求至Ajax緩存,獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求返回的運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5應(yīng)用程序。本發(fā)明通過將HTML5離線應(yīng)用與Ajax緩存結(jié)合使用,使得離線應(yīng)用的緩存空間無限大,可以緩存更多的應(yīng)用數(shù)據(jù),從而提供更流暢的離線服務(wù)。
【專利說明】一種實(shí)現(xiàn)離線應(yīng)用的方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于計(jì)算機(jī)【技術(shù)領(lǐng)域】,尤其涉及一種實(shí)現(xiàn)離線應(yīng)用的方法及裝置。
【背景技術(shù)】
[0002] 隨著移動(dòng)終端的日益普及,及HTML5技術(shù)的不斷發(fā)展,通過移動(dòng)終端瀏覽網(wǎng)絡(luò)變 得更加方便,因此,移動(dòng)終端的使用頻率也在不斷增加,但當(dāng)前的移動(dòng)網(wǎng)絡(luò)本身還是不能隨 時(shí)滿足用戶需要,尤其是在移動(dòng)的場(chǎng)景中,在移動(dòng)終端遇到網(wǎng)絡(luò)較弱或網(wǎng)絡(luò)終端的情況后, 網(wǎng)絡(luò)將無法為用戶提供完整的服務(wù),或者無法使用,從而導(dǎo)致用戶體驗(yàn)被切斷,不流暢。
[0003] 現(xiàn)有技術(shù)方案對(duì)上述網(wǎng)絡(luò)較弱或網(wǎng)絡(luò)中斷的情況處理方案是預(yù)先緩存需要訪問 的應(yīng)用程序的數(shù)據(jù),當(dāng)網(wǎng)絡(luò)較弱或網(wǎng)絡(luò)中斷時(shí),調(diào)用緩存的數(shù)據(jù),維持應(yīng)用程序的正常使 用,然而,現(xiàn)有技術(shù)的處理方案中的緩存容量有限,無法緩存更多的應(yīng)用數(shù)據(jù),從而無法提 供持續(xù)的離線服務(wù)。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明實(shí)施例的目的在于提供一種實(shí)現(xiàn)離線應(yīng)用的方法及裝置,旨在解決現(xiàn)有技 術(shù)網(wǎng)絡(luò)較弱或網(wǎng)絡(luò)中斷時(shí)的緩存容量有限,無法緩存更多的應(yīng)用數(shù)據(jù),從而無法提供持續(xù) 的離線服務(wù)問題。
[0005] 為了實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供如下技術(shù)方案:
[0006] 本發(fā)明實(shí)施例提供了一種實(shí)現(xiàn)離線應(yīng)用的方法,所述方法包括:
[0007] 當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax請(qǐng)求至Ajax緩 存;
[0008] 獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求返回的運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù);
[0009] 根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5應(yīng)用程序。
[0010] 本發(fā)明實(shí)施例還提供了一種實(shí)現(xiàn)離線應(yīng)用的裝置,所述裝置包括:
[0011] 發(fā)送單元,用于當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax 請(qǐng)求至Ajax緩存;
[0012] 獲取單元,用于獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求返回的運(yùn)行所述HTML5應(yīng)用程 序所需的數(shù)據(jù);
[0013] 運(yùn)行單元,用于根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5應(yīng) 用程序。
[0014] 本發(fā)明實(shí)施例與現(xiàn)有技術(shù)相比,有益效果在于:當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù) HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax請(qǐng)求至Ajax緩存,獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求 返回的運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù) 據(jù),運(yùn)行所述HTML5應(yīng)用程序。通過將HTML5離線應(yīng)用與Ajax緩存結(jié)合使用,使得離線應(yīng) 用的緩存空間無限大,可以緩存更多的應(yīng)用數(shù)據(jù),從而提供更流暢的離線服務(wù)。
【專利附圖】
【附圖說明】
[0015] 為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用 的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本 領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的 附圖。
[0016] 圖1是本發(fā)明實(shí)施例一提供的實(shí)現(xiàn)離線應(yīng)用的方法的實(shí)現(xiàn)的流程圖;
[0017] 圖2是本發(fā)明實(shí)施例一提供的實(shí)現(xiàn)離線應(yīng)用的過程的示意圖;
[0018] 圖3是本發(fā)明實(shí)施例一提供的Ajax緩存更新的方法的實(shí)現(xiàn)流程圖;
[0019] 圖4是本發(fā)明實(shí)施例二提供的實(shí)現(xiàn)離線應(yīng)用的裝置的結(jié)構(gòu)圖;
[0020] 圖5是本發(fā)明實(shí)施例二提供的實(shí)現(xiàn)離線應(yīng)用的裝置中更新單元的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0021] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
[0022] 本實(shí)施例中,當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax請(qǐng) 求至Ajax緩存,獲取Ajax緩存根據(jù)返回的運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),根據(jù)所述 運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5應(yīng)用程序。
[0023] 以下結(jié)合具體實(shí)施例對(duì)本發(fā)明的實(shí)現(xiàn)進(jìn)行詳細(xì)描述:
[0024] 實(shí)施例一
[0025] 圖1是本發(fā)明實(shí)施例一提供的實(shí)現(xiàn)離線應(yīng)用的方法的實(shí)現(xiàn)的流程圖,詳述如下:
[0026] 在S101中,當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax請(qǐng) 求至Ajax緩存;
[0027] 在S102中,獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求返回的運(yùn)行所述HTML5應(yīng)用程序所 需的數(shù)據(jù);
[0028] 本實(shí)施例中,本地Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)的可以采用如 下方式:當(dāng)瀏覽器為在線狀態(tài)時(shí),通過js程序從WEB服務(wù)器預(yù)讀運(yùn)行所述HTML5應(yīng)用程序 所需的數(shù)據(jù),并通過Ajax緩存存儲(chǔ)所述數(shù)據(jù),S卩,根據(jù)用戶當(dāng)前使用的HTML5應(yīng)用程序,由 js程序判斷運(yùn)行所述HTML5應(yīng)用程序需要使用的數(shù)據(jù),根據(jù)判斷結(jié)果,js程序從WEB服務(wù) 器預(yù)讀所述HTML5應(yīng)用程序所需的數(shù)據(jù),并通過Ajax緩存存儲(chǔ)所述數(shù)據(jù),當(dāng)然,js程序也 可以根據(jù)用戶設(shè)置緩存應(yīng)用程序的數(shù)據(jù)。
[0029] 本實(shí)施例中,本地Ajax緩存根據(jù)所述Ajax請(qǐng)求,向?yàn)g覽器返回運(yùn)行所述HTML5應(yīng) 用程序所需的數(shù)據(jù),由于Ajax緩存是放在磁盤上,因此可以有更多的緩存空間。
[0030] 在S103中,根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5應(yīng)用 程序。
[0031] 為了便于理解,以下以一個(gè)具體的實(shí)現(xiàn)示例對(duì)本實(shí)施例中實(shí)現(xiàn)離線應(yīng)用的方法進(jìn) 行說明,但不以本實(shí)現(xiàn)示例的情況為限:假設(shè)當(dāng)前用戶在線閱讀小說,瀏覽器獲取閱讀內(nèi) 容的流程,請(qǐng)參閱圖2,其流程為:1->2->3->4->5->6->7->8,即,瀏覽器接收用戶的閱讀請(qǐng) 求,通過js事件,判斷需要預(yù)讀的內(nèi)容為前N章的內(nèi)容,貝U發(fā)送Ajax請(qǐng)求至Ajax緩存,Ajax 緩存存儲(chǔ)通過http請(qǐng)求,獲取前N章的內(nèi)容,并在Ajax緩存存儲(chǔ)所述獲取的前N章的內(nèi) 容,并通過響應(yīng)消息展示給用戶閱讀;此時(shí),若網(wǎng)絡(luò)較弱或網(wǎng)絡(luò)中斷,則仍然可以從Ajax緩 存獲取閱讀數(shù)據(jù),其獲取數(shù)據(jù)的流程為:1->2->3->6->7->8。
[0032] 本實(shí)施例中,當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax請(qǐng) 求至Ajax緩存,獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求返回的運(yùn)行所述HTML5應(yīng)用程序所需的 數(shù)據(jù),根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5應(yīng)用程序。通過將 HTML5離線應(yīng)用與Ajax緩存結(jié)合使用,使得離線應(yīng)用的緩存空間無限大,可以緩存更多的 應(yīng)用數(shù)據(jù),從而提供更流暢的離線服務(wù)。
[0033] 作為本發(fā)明的一個(gè)實(shí)施例,為了使Ajax緩存的數(shù)據(jù)可以向用戶提供及時(shí)準(zhǔn)確的 信息,可以對(duì)緩存的數(shù)據(jù)進(jìn)行校驗(yàn),對(duì)校驗(yàn)通過的數(shù)據(jù)進(jìn)行及時(shí)更新,校驗(yàn)過程如下:
[0034] 當(dāng)瀏覽器為在線狀態(tài)時(shí),對(duì)Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)與WEB服 務(wù)器存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)進(jìn)行MD5校驗(yàn);
[0035] 當(dāng)所述Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)的MD5值與WEB服務(wù)器存儲(chǔ) 的所述HTML5應(yīng)用程序的數(shù)據(jù)相同時(shí),說明Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)為 最新的數(shù)據(jù),此時(shí),不需要更新Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù),則結(jié)束;
[0036] 當(dāng)所述Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)的MD5值與WEB服務(wù)器存儲(chǔ) 的所述HTML5應(yīng)用程序的數(shù)據(jù)不同時(shí),說明Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)為 不是最新更新的數(shù)據(jù),則更新Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)。
[0037] 本實(shí)施例中,通過MD5校驗(yàn),可以及時(shí)了解Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序 的數(shù)據(jù)是否是最新更新的數(shù)據(jù),避免緩存錯(cuò)誤的應(yīng)用程序數(shù)據(jù)。
[0038] 作為本發(fā)明的一個(gè)實(shí)施例,當(dāng)瀏覽器為在線狀態(tài)時(shí),當(dāng)對(duì)同一個(gè)應(yīng)用程序進(jìn)行訪 問時(shí),對(duì)于Ajax緩存,仍然是在本地瀏覽器中獲取之前緩存的數(shù)據(jù),而此時(shí)瀏覽器的數(shù)據(jù) 可能已經(jīng)發(fā)生了更新,而本地存儲(chǔ)的內(nèi)容并未發(fā)生更新,為了及時(shí)對(duì)本地服務(wù)器中的數(shù)據(jù) 進(jìn)行更新,可以采用如下方式更新Ajax緩存中的數(shù)據(jù),請(qǐng)參閱圖3示出了本發(fā)明實(shí)施例一 提供的Ajax緩存更新的方法的實(shí)現(xiàn)流程圖,詳述如下:
[0039] 在S301中,接收對(duì)所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)的更新請(qǐng)求。
[0040] 本實(shí)施例中,所述更新請(qǐng)求可以為對(duì)所述HTML5應(yīng)用程序刷新的請(qǐng)求。
[0041] 在S302中,根據(jù)所述更新請(qǐng)求,修改所述HTML5應(yīng)用程序?qū)?yīng)的URL地址;
[0042] 本實(shí)施例中,強(qiáng)制修改應(yīng)用程序?qū)?yīng)的URL地址后,此時(shí),無法從Ajax緩存獲取所 述修改后URL地址對(duì)應(yīng)的數(shù)據(jù),值得說明的是,所述修改并不修改URL地址的訪問路徑,因 此,其獲取的數(shù)據(jù)仍然是所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)。
[0043] 優(yōu)選的,S302具體可以采用如下方式實(shí)現(xiàn):根據(jù)所述刷新請(qǐng)求,在所述HTML5應(yīng)用 程序?qū)?yīng)的URL地址的參數(shù)中增加隨機(jī)數(shù),通過在URL地址的參數(shù)中增加隨機(jī)數(shù),可以方便 的對(duì)URL地址實(shí)現(xiàn)修改,簡(jiǎn)單,方便。
[0044] 在S303中,發(fā)送修改后的URL地址至WEB服務(wù)器,以使所述WEB服務(wù)器根據(jù)所述 修改后的URL地址返回所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù);
[0045] 在S304中,根據(jù)WEB服務(wù)器返回的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù),更新Ajax緩 存存儲(chǔ)的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù);
[0046] 根據(jù)更新的Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù),運(yùn)行所述HTML5應(yīng) 用程序。
[0047] 本實(shí)施例中,當(dāng)瀏覽器為在線狀態(tài)時(shí),如果接收到用戶的刷新請(qǐng)求,通過修改所述 HTML5應(yīng)用程序?qū)?yīng)的URL地址,可以及時(shí)對(duì)Ajax緩存的數(shù)據(jù)進(jìn)行更新,避免服務(wù)器的數(shù)據(jù) 已經(jīng)更新,而Ajax緩存存儲(chǔ)的數(shù)據(jù)的還未進(jìn)行更新。
[0048] 實(shí)施例二
[0049] 圖4示出了本發(fā)明實(shí)施例二提供的實(shí)現(xiàn)離線應(yīng)用的裝置的結(jié)構(gòu)圖,為了便于說 明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,該裝置可以是內(nèi)置于移動(dòng)終端中的軟件單元、硬 件單元或者軟硬結(jié)合單元。
[0050] 所述裝置包括:
[0051] 發(fā)送單元41,用于當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送 Ajax請(qǐng)求至Ajax緩存;
[0052] 獲取單元42,用于獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求返回的運(yùn)行所述HTML5應(yīng)用 程序所需的數(shù)據(jù);
[0053] 運(yùn)行單元43,用于根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5 應(yīng)用程序。
[0054] 可選的,述裝置還包括:
[0055] 預(yù)讀單元44,用于當(dāng)瀏覽器為在線狀態(tài)時(shí),通過js程序從WEB服務(wù)器預(yù)讀運(yùn)行所 述HTML5應(yīng)用程序所需的數(shù)據(jù),并通過Ajax緩存存儲(chǔ)所述數(shù)據(jù)。
[0056] 可選的,所述裝置還包括:
[0057] 校驗(yàn)單元46,用于當(dāng)瀏覽器為在線狀態(tài)時(shí),對(duì)Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程 序的數(shù)據(jù)與WEB服務(wù)器存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)進(jìn)行MD5校驗(yàn);
[0058] 更新單元47,用于當(dāng)所述Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)的MD5值與 WEB服務(wù)器存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)不同時(shí),則更新Ajax緩存存儲(chǔ)的所述HTML5 應(yīng)用程序的數(shù)據(jù);
[0059] 結(jié)束單元48,用于當(dāng)所述Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)的MD5值與 WEB服務(wù)器存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)相同時(shí),則結(jié)束。
[0060] 請(qǐng)參閱圖5為本發(fā)明實(shí)施例二提供的實(shí)現(xiàn)離線應(yīng)用的裝置中更新單元的結(jié)構(gòu)圖, 所述更新單元包括:更新請(qǐng)求接收模塊51、URL地址修改模塊52、發(fā)送模塊53及更新執(zhí)行 模塊54,
[0061] 更新請(qǐng)求接收模塊51,用于接收對(duì)所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)的更新請(qǐng)求;
[0062] URL地址修改模塊52,用于根據(jù)所述更新請(qǐng)求,修改所述HTML5應(yīng)用程序?qū)?yīng)的 URL地址;
[0063] 發(fā)送模塊53,用于發(fā)送修改后的URL地址至WEB服務(wù)器,以使所述WEB服務(wù)器根據(jù) 所述修改后的URL地址返回所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù);
[0064] 更新執(zhí)行模塊54,用于根據(jù)WEB服務(wù)器返回的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù),更 新Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)。
[0065] 可選的,所述URL地址修改模塊52,具體用于根據(jù)所述刷新請(qǐng)求,在所述HTML5應(yīng) 用程序?qū)?yīng)的URL地址的參數(shù)中增加隨機(jī)數(shù)。
[0066] 本發(fā)明實(shí)施例提供的實(shí)現(xiàn)離線應(yīng)用的裝置可以使用在前述對(duì)應(yīng)的方法實(shí)施例一 中,詳情參見上述實(shí)施例一的描述,在此不再贅述。
[0067] 值得注意的是,上述實(shí)施例中,所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的, 但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也 只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護(hù)范圍。
[0068] 另外,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述各實(shí)施例方法中的全部或部分步驟 是可以通過程序來指令相關(guān)的硬件來完成,相應(yīng)的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介 質(zhì)中,所述的存儲(chǔ)介質(zhì),如R0M/RAM、磁盤或光盤等。
[〇〇69] 以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1. 一種實(shí)現(xiàn)離線應(yīng)用的方法,其特征在于,所述方法包括: 當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax請(qǐng)求至Ajax緩存; 獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求返回的運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù); 根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5應(yīng)用程序。
2. 如權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 當(dāng)瀏覽器為在線狀態(tài)時(shí),通過js程序從WEB服務(wù)器預(yù)讀運(yùn)行所述HTML5應(yīng)用程序所需 的數(shù)據(jù),并通過Ajax緩存存儲(chǔ)所述數(shù)據(jù)。
3. 如權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 當(dāng)瀏覽器為在線狀態(tài)時(shí),對(duì)Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)與WEB服務(wù)器 存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)進(jìn)行MD5校驗(yàn); 當(dāng)所述Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)的MD5值與WEB服務(wù)器存儲(chǔ)的所 述HTML5應(yīng)用程序的數(shù)據(jù)不同時(shí),則更新Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù); 當(dāng)所述Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)的MD5值與WEB服務(wù)器存儲(chǔ)的所 述HTML5應(yīng)用程序的數(shù)據(jù)相同時(shí),則結(jié)束。
4. 如權(quán)利要求3所述的方法,其特征在于,所述更新Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用 程序的數(shù)據(jù)包括: 接收對(duì)所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)的更新請(qǐng)求; 根據(jù)所述更新請(qǐng)求,修改所述HTML5應(yīng)用程序?qū)?yīng)的URL地址; 發(fā)送修改后的URL地址至WEB服務(wù)器,以使所述WEB服務(wù)器根據(jù)所述修改后的URL地 址返回所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù); 根據(jù)WEB服務(wù)器返回的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù),更新Ajax緩存存儲(chǔ)的所述 HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)。
5. 如權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述刷新請(qǐng)求,修改所述HTML5應(yīng) 用程序?qū)?yīng)的URL地址具體為: 根據(jù)所述刷新請(qǐng)求,在所述HTML5應(yīng)用程序?qū)?yīng)的URL地址的參數(shù)中增加隨機(jī)數(shù)。
6. -種實(shí)現(xiàn)離線應(yīng)用的裝置,其特征在于,所述裝置包括: 發(fā)送單元,用于當(dāng)瀏覽器為離線狀態(tài)時(shí),根據(jù)HTML5應(yīng)用程序訪問請(qǐng)求,發(fā)送Ajax請(qǐng)求 至Ajax緩存; 獲取單元,用于獲取Ajax緩存根據(jù)所述Ajax請(qǐng)求返回的運(yùn)行所述HTML5應(yīng)用程序所 需的數(shù)據(jù); 運(yùn)行單元,用于根據(jù)所述運(yùn)行所述HTML5應(yīng)用程序所需的數(shù)據(jù),運(yùn)行所述HTML5應(yīng)用程 序。
7. 如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 預(yù)讀單元,用于當(dāng)瀏覽器為在線狀態(tài)時(shí),通過js程序從WEB服務(wù)器預(yù)讀運(yùn)行所述HTML5 應(yīng)用程序所需的數(shù)據(jù),并通過Ajax緩存存儲(chǔ)所述數(shù)據(jù)。
8. 如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 校驗(yàn)單元,用于當(dāng)瀏覽器為在線狀態(tài)時(shí),對(duì)Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù) 據(jù)與WEB服務(wù)器存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)進(jìn)行MD5校驗(yàn); 更新單元,用于當(dāng)所述Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)的MD5值與WEB服 務(wù)器存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)不同時(shí),則更新Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程 序的數(shù)據(jù); 結(jié)束單元,用于當(dāng)所述Ajax緩存存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)的MD5值與WEB服 務(wù)器存儲(chǔ)的所述HTML5應(yīng)用程序的數(shù)據(jù)相同時(shí),則結(jié)束。
9. 如權(quán)利要求3所述的裝置,其特征在于,所述更新單元包括: 更新請(qǐng)求接收模塊,用于接收對(duì)所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)的更新請(qǐng)求; URL地址修改模塊,用于根據(jù)所述更新請(qǐng)求,修改所述HTML5應(yīng)用程序?qū)?yīng)的URL地 址; 發(fā)送模塊,用于發(fā)送修改后的URL地址至WEB服務(wù)器,以使所述WEB服務(wù)器根據(jù)所述修 改后的URL地址返回所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù); 更新執(zhí)行模塊,用于根據(jù)WEB服務(wù)器返回的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù),更新A j ax 緩存存儲(chǔ)的所述HTML5應(yīng)用程序?qū)?yīng)的數(shù)據(jù)。
10. 如權(quán)利要求9所述的裝置,其特征在于,所述URL地址修改模塊,具體用于根據(jù)所述 刷新請(qǐng)求,在所述HTML5應(yīng)用程序?qū)?yīng)的URL地址的參數(shù)中增加隨機(jī)數(shù)。
【文檔編號(hào)】G06F9/46GK104063269SQ201310090189
【公開日】2014年9月24日 申請(qǐng)日期:2013年3月20日 優(yōu)先權(quán)日:2013年3月20日
【發(fā)明者】龍海建 申請(qǐng)人:騰訊科技(深圳)有限公司