亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

網(wǎng)頁保存、網(wǎng)頁打開方法及裝置和網(wǎng)頁瀏覽系統(tǒng)的制作方法

文檔序號:6526828閱讀:262來源:國知局
網(wǎng)頁保存、網(wǎng)頁打開方法及裝置和網(wǎng)頁瀏覽系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種網(wǎng)頁保存和網(wǎng)頁打開的方法及裝置。在該網(wǎng)頁保存方法中,在接收到保存網(wǎng)頁的指令后,以MHTML格式保存網(wǎng)頁的頁面數(shù)據(jù);并且在網(wǎng)頁中包括AJAX請求時,將AJAX資源與AJAX請求相關聯(lián)地保存在本地數(shù)據(jù)庫中。并且在網(wǎng)頁打開時,如果加載網(wǎng)頁時產(chǎn)生AJAX請求,則在本地獲取對應的AJAX資源。利用該方法,當打開網(wǎng)頁時,即使處于斷網(wǎng)狀態(tài),由于本地也保留著AJAX資源,由此可以在本地獲取AJAX資源,從而解決了斷網(wǎng)情況下,因為無法獲取AJAX請求的AJAX資源而導致部分網(wǎng)頁功能不能使用的問題。
【專利說明】網(wǎng)頁保存、網(wǎng)頁打開方法及裝置和網(wǎng)頁瀏覽系統(tǒng)
【技術領域】
[0001]本發(fā)明涉及網(wǎng)頁瀏覽領域,更為具體地,涉及一種網(wǎng)頁保存和網(wǎng)頁打開的方法及裝置,以及一種網(wǎng)頁瀏覽系統(tǒng)。
【背景技術】
[0002]現(xiàn)在的網(wǎng)頁保存形式基本上有兩種。
[0003]一種是HTML+子資源的形式,就是將當前的網(wǎng)頁保存成一個HTML文檔,其圖片、樣式表及腳本文件等都各自以一個單獨的文件保存下來,而HTML文檔里的資源的路徑都要相應地修改為對應于保存到本地的文件的路徑。
[0004]另一種是MHTML的形式,就是將當前頁面的網(wǎng)頁數(shù)據(jù)打包保存到一個文件中,網(wǎng)頁里面所有的數(shù)據(jù)都保存到同一個文件中,無需修改任何頁面數(shù)據(jù)。
[0005]HTML+子資源的形式屬于一種靜態(tài)保存,只能保存當前頁面已經(jīng)生成好的內容。如果某部分內容是通過JS (JavaScript)生成的話,打開保存的這個HTML文件的時候,這部分內容會重新生成,那么就會出現(xiàn)兩份重復的內容。這種保存形式還有很多問題,例如,某些網(wǎng)站,如新浪微博、優(yōu)酷等做了域名限制,不能通過這種形式將網(wǎng)頁保存下來。另外,還有base (基礎)標簽的限制等等,導致保存下來的網(wǎng)頁跟原來網(wǎng)頁的出入非常大。
[0006]MHTML形式遵循MHTML標準,將網(wǎng)頁所有原始數(shù)據(jù)打包保存到一個文件當中,打開文件時,會重新執(zhí)行生成頁面的操作,這樣就不會出現(xiàn)上述HTML+子資源的形式所存在的問題。因為,頁面是重新執(zhí)行生成,所以如果是在斷網(wǎng)的情況下,而這個網(wǎng)頁某部分內容是依賴于AJAX (異步JavaScript和XML)請求生成的話,那么頁面也無法還原為原來頁面的樣子。而這個問題對于HTML+子資源的形式卻不會存在。
[0007]很明顯,MHTML要比HTML+子資源的形式要優(yōu)秀,但是也存在該形式無法解決的問題,那就是對于依賴AJAX請求的內容,在斷網(wǎng)的情況下無法正確生成。
[0008]本來這樣的問題影響也不是很明顯。但是隨著業(yè)務的拓展,問題變得嚴重。例如,在iPad2.0上推出了稍后閱讀+離線視頻的結合。稍后閱讀的實現(xiàn)正是使用MHTML形式的保存形式,可以比較完美的將所有網(wǎng)頁保存下來。但是加上了離線視頻就出問題了。很多網(wǎng)站的視頻控件video (視頻)標簽是通過某個AJAX請求生成的。如果在斷網(wǎng)情況下,那么這個視頻控件無法生成,于是就無法播放已離線保存到本地的視頻。因此,這個功能就因為這個問題而存在著最重大的缺陷,即網(wǎng)頁保存下來了,視頻也保存下來了,卻不能離線播放。

【發(fā)明內容】

[0009]鑒于上述問題,提出了一種網(wǎng)頁保存方法及裝置,該網(wǎng)頁保存方法及裝置能夠在需要保存的網(wǎng)頁中包括AJAX請求的情況下,除了以MHTML格式保存所述網(wǎng)頁的頁面數(shù)據(jù)之外;還將將基于所述AJAX請求而獲取的AJAX資源與AJAX請求相關聯(lián)地保存在本地數(shù)據(jù)庫中。[0010]本發(fā)明還提出了一種網(wǎng)頁打開方法及裝置,該網(wǎng)頁打開方法及裝置能夠基于上述方式保存的網(wǎng)頁數(shù)據(jù)及AJAX資源來在本地生成網(wǎng)頁進行瀏覽。
[0011]本發(fā)明還提出了一種網(wǎng)頁瀏覽系統(tǒng),該網(wǎng)頁瀏覽系統(tǒng)能夠實現(xiàn)對網(wǎng)頁內容進行離線瀏覽。
[0012]根據(jù)本發(fā)明的一個方面,提供了一種網(wǎng)頁保存方法,包括:在接收到網(wǎng)頁保存指令后,以MHTML格式保存所述網(wǎng)頁的頁面數(shù)據(jù);以及在所述網(wǎng)頁中包括AJAX請求的情況下,將基于所述AJAX請求而獲取的AJAX資源與AJAX請求相關聯(lián)地保存在本地數(shù)據(jù)庫中。
[0013]在上述方面的一個或多個示例中,將基于所述AJAX請求而獲取的AJAX資源保存在本地數(shù)據(jù)庫中可以包括:在所述網(wǎng)頁中包括AJAX請求的情況下,在內存中創(chuàng)建用于保存基于所述AJAX請求而獲取的AJAX資源的AJAX資源緩存;將所述AJAX資源與所述AJAX請求相關聯(lián)地保存在所述AJAX資源緩存中;以及將所述AJAX資源緩存中保存的所述AJAX資源,以數(shù)據(jù)庫的形式與所述AJAX請求相關聯(lián)地保存到本地數(shù)據(jù)庫中。
[0014]在上述方面的一個或多個示例中,所述AJAX請求可以包括AJAX資源的URL地址,以及在將所述AJAX資源保存在所述AJAX資源緩存和本地數(shù)據(jù)庫的步驟中,所述AJAX資源與所述URL地址相關聯(lián)地保存。
[0015]在上述方面的一個或多個示例中,所述將所述AJAX資源保存在所述AJAX資源緩存和本地數(shù)據(jù)庫的步驟在網(wǎng)絡適配層中執(zhí)行。
[0016]根據(jù)本發(fā)明的另一方面,提供了一種網(wǎng)頁保存裝置,包括:頁面數(shù)據(jù)保存單元,用于在接收到網(wǎng)頁保存指令后,以MHTML格式保存所述網(wǎng)頁的頁面數(shù)據(jù);以及AJAX資源保存單元,用于在所述網(wǎng)頁中包含AJAX請求的情況下,將基于所述AJAX請求而獲取的AJAX資源與AJAX請求相關聯(lián)地保存在本地數(shù)據(jù)庫中。
[0017]在上述方面的一個或多個示例中,所述網(wǎng)頁保存裝置還可以包括:AJAX資源緩存創(chuàng)建單元,用于在所述網(wǎng)頁中包括AJAX請求的情況下,在內存中創(chuàng)建用于保存基于所述AJAX請求而獲取的AJAX資源的AJAX資源緩存;AJAX資源緩存保存單元,用于將所述AJAX資源與所述AJAX請求相關聯(lián)地保存在所述AJAX資源緩存中,以及所述AJAX資源保存單元被配置為將所述AJAX資源緩存中保存的所述AJAX資源,以數(shù)據(jù)庫的形式與所述AJAX請求相關聯(lián)地保存到本地數(shù)據(jù)庫中。
[0018]根據(jù)本發(fā)明的另一方面,提供了一種網(wǎng)頁打開方法,包括:在接收到瀏覽如上所述保存的網(wǎng)頁的網(wǎng)頁瀏覽指令后,基于以所述MHTML格式保存的頁面數(shù)據(jù)進行網(wǎng)頁加載;當在加載所述網(wǎng)頁時產(chǎn)生AJAX請求時,從本地讀取與所述AJAX請求對應的AJAX資源;以及基于所加載的頁面數(shù)據(jù)和所讀取的AJAX資源,生成所述網(wǎng)頁頁面。
[0019]在上述方面的一個或多個示例中,所述從本地中讀取與所述AJAX請求對應的AJAX資源可以包括:基于所述AJAX請求,從本地數(shù)據(jù)庫中讀取與所述AJAX請求對應的AJAX資源。
[0020]在上述方面的一個或多個示例中,所述從本地中讀取與所述AJAX請求對應的AJAX資源可以包括:在本地存在所述AJAX資源緩存的情況下,基于所述AJAX請求,從所述AJAX資源緩存中讀取與所述AJAX請求對應的AJAX資源。
[0021 ] 在上述方面的一個或多個示例中,所述AJAX請求可以包括AJAX資源的URL地址,以及所述AJAX資源與所述URL地址相關聯(lián)地保存在所述本地數(shù)據(jù)庫中,以及所述從本地中讀取與所述AJAX請求對應的AJAX資源可以包括:獲取本地數(shù)據(jù)庫或AJAX資源緩存中保存的AJAX資源的所有URL地址的URL列表;根據(jù)所述AJAX請求中的URL地址,對所述URL列表進行完全匹配查找;在所述URL列表中查找到完全匹配的URL地址時,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源;在所述URL列表中未找到完全匹配的URL地址時,使用所述AJAX請求中的URL的正則表達式進行模糊匹配查找;以及在查找到唯一一條匹配結果時,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所查找到的URL地址對應的AJAX資源。
[0022]在上述方面的一個或多個示例中,所述從本地讀取與所述AJAX請求對應的AJAX資源的步驟在網(wǎng)絡適配層中執(zhí)行。
[0023]根據(jù)本發(fā)明的另一方面,提供了一種網(wǎng)頁打開裝置,包括:頁面數(shù)據(jù)加載單元,用于在接收到瀏覽如上所述保存的網(wǎng)頁的網(wǎng)頁瀏覽指令后,基于以所述MHTML格式保存的頁面數(shù)據(jù)進行網(wǎng)頁加載;AJAX資源讀取單元,用于當在加載所述網(wǎng)頁時產(chǎn)生AJAX請求時,從本地讀取與所述AJAX請求對應的AJAX資源;以及網(wǎng)頁生成單元,用于基于所加載的頁面數(shù)據(jù)以及所讀取的AJAX資源,生成所述網(wǎng)頁頁面。
[0024]在上述方面的一個或多個示例中,所述AJAX資源讀取單元被配置為基于所述AJAX請求,從本地數(shù)據(jù)庫中讀取與所述AJAX請求對應的AJAX資源。
[0025]在上述方面的一個或多個示例中,在本地存在所述AJAX資源緩存的情況下,所述AJAX資源讀取單元被配置為基于所述AJAX請求,從所述AJAX資源緩存中讀取與所述AJAX請求對應的AJAX資源。
[0026]在上述方面的一個或多個示例中,所述AJAX請求可以包括AJAX資源的URL地址,以及所述AJAX資源與所述URL地址相關聯(lián)地保存在所述本地數(shù)據(jù)庫中,以及所述AJAX資源讀取單元可以包括:URL列表獲取單元,用于獲取本地數(shù)據(jù)庫或AJAX資源緩存中保存的AJAX資源的所有URL地址的URL列表;完全匹配單元,用于根據(jù)所述AJAX請求中的URL地址,對所述URL列表進行完全匹配查找;第一 AJAX資源獲取單元,用于在所述URL列表中查找到完全匹配的URL地址時,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源;模糊匹配單元,用于在所述URL列表中未找到完全匹配的URL地址時,使用所述AJAX請求中的URL的正則表達式進行模糊匹配查找;以及第二 AJAX資源獲取單元,用于當在模糊匹配時查找到唯一一條匹配結果時,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源。
[0027]根據(jù)本發(fā)明的另一方面,提供了一種網(wǎng)頁瀏覽系統(tǒng),包括顯示單元,存儲單元,如上所述的網(wǎng)頁保存裝置以及如上所述的網(wǎng)頁打開裝置。
[0028]通過使用本發(fā)明的方法和裝置,在所瀏覽的網(wǎng)頁頁面包含AJAX請求的情況下,即使處于斷網(wǎng)狀態(tài),也能在本地響應于AJAX請求而獲得AJAX資源,從而能夠在本地實現(xiàn)離線網(wǎng)頁頁面瀏覽。
[0029]為了實現(xiàn)上述以及相關目的,本發(fā)明的一個或多個方面包括后面將詳細說明并在權利要求中特別指出的特征。下面的說明以及附圖詳細說明了本發(fā)明的某些示例性方面。然而,這些方面指示的僅僅是可使用本發(fā)明的原理的各種方式中的一些方式。此外,本發(fā)明旨在包括所有這些方面以及它們的等同物?!緦@綀D】

【附圖說明】
[0030]根據(jù)下述參照附圖進行的詳細描述,本發(fā)明的上述和其他目的、特征和優(yōu)點將變得更加顯而易見。在附圖中:
[0031]圖1示出了根據(jù)本發(fā)明的網(wǎng)頁瀏覽方法的總體流程圖;
[0032]圖2示出了根據(jù)本發(fā)明的網(wǎng)頁瀏覽系統(tǒng)的示意方框圖;
[0033]圖3示出了根據(jù)本發(fā)明的實施例的網(wǎng)頁保存方法的示意性流程圖;
[0034]圖4示出了根據(jù)本發(fā)明的另一實施例的網(wǎng)頁保存方法的示意性流程圖;
[0035]圖5示出了圖2中的網(wǎng)頁保存裝置的一個實施例的示意方框圖;
[0036]圖6示出了圖2中的網(wǎng)頁保存裝置的另一實施例的示意方框圖;
[0037]圖7是根據(jù)本發(fā)明的實施例的網(wǎng)頁打開方法的示意流程圖;
[0038]圖8示意性地示出了基于AJAX請求中的URL從本地數(shù)據(jù)庫讀取AJAX資源的方法示例的流程圖;
[0039]圖9給出了圖7所示的網(wǎng)頁打開方法的變型的流程圖;
[0040]圖10是圖2中的網(wǎng)頁打開裝置的一個實施例的示意性方框圖;和
[0041]圖11示出了根據(jù)本發(fā)明的AJAX資源讀取單元的一個實施例的示意性方框圖。
[0042]在所有附圖中相同的標號指示相似或相應的特征或功能。
【具體實施方式】
[0043]下面描述本公開的各個方面。應該明白的是,本文的教導可以以多種多樣形式具體體現(xiàn),并且在本文中公開的任何具體結構、功能或兩者僅僅是代表性的?;诒疚牡慕虒В绢I域技術人員應該明白的是,本文所公開的一個方面可以獨立于任何其它方面實現(xiàn),并且這些方面中的兩個或多個方面可以按照各種方式組合。例如,可以使用本文所闡述的任何數(shù)目的方面,實現(xiàn)裝置或實踐方法。另外,可以使用其它結構、功能、或除了本文所闡述的一個或多個方面之外或不是本文所闡述的一個或多個方面的結構和功能,實現(xiàn)這種裝置或實踐這種方法。此外,本文所描述的任何方面可以包括權利要求的至少一個元素。
[0044]在對本發(fā)明的實施例進行詳細說明之前,先對本發(fā)明中涉及的AJAX技術進行簡要說明。
[0045]AJAX 是 Asynchronous JavaScript+XML(異步 JavaScript 和 XML)的縮略語。AJAX技術其實是多種開發(fā)技術的有機組合,包括:利用XHTML和CSS技術實現(xiàn)標準界面;利用Document Object Model技術實現(xiàn)動態(tài)顯示和交互功能;利用XML和XSLT技術來實現(xiàn)數(shù)據(jù)的交換和維護;利用XMLHttpRequest技術實現(xiàn)異步數(shù)據(jù)檢索;以及利用JavaScript把一切聯(lián)系起來。
[0046]傳統(tǒng)的網(wǎng)絡程序工作流程基本如下:客戶在網(wǎng)頁上的操作轉化為HTTP請求傳回服務器,而服務器接受請求以及相關數(shù)據(jù)、解析數(shù)據(jù)并將其發(fā)送給相應的處理單元后,將返回的數(shù)據(jù)轉成HTML頁發(fā)還給客戶。這種工作流程總會讓用戶感覺不太舒服,因為當服務器處理數(shù)據(jù)的時候,用戶只能等待。顯然用戶不喜歡每作一步操作后,都需要等待服務器返回新的網(wǎng)頁,用戶希望的是順暢的使用網(wǎng)絡程序,甚至感覺不到服務器的存在。
[0047]AJAX技術可以擺脫這種停停走走的網(wǎng)絡交互方式,實現(xiàn)的方法是AJAX在客戶與服務器之間插入AJAX engine, AJAX engine是用JavasSript編寫的,用于負責繪制客戶看到的界面以及與服務器進行通信。在會話開始后,瀏覽器裝載AJAX engine,而不是一個網(wǎng)頁。AJAX engine可以用異步通訊的方式將用戶的輸入發(fā)送給服務器,從而避免用戶看著空白的網(wǎng)頁等待服務器的響應。用戶的操作會調用一個AJAX engine的javascript函數(shù),在以前這通常會觸發(fā)一個HTTP請求給服務器,所有對用戶操作的響應不需要再通過服務器,諸如簡單的數(shù)據(jù)檢查、修改數(shù)據(jù)甚至檢索網(wǎng)頁,engine都可以處理。如果engine必須要服務器返回數(shù)據(jù)以響應用戶的請求,比如需要服務器處理提交的數(shù)據(jù)或者裝載新的代碼或數(shù)據(jù)等,engine會采用異步通訊的方式發(fā)出請求,通常用XML,從而不會影響用戶與程序的交互。
[0048]下面將參照附圖描述本發(fā)明的各個實施例。
[0049]網(wǎng)頁瀏覽方法及系統(tǒng)
[0050]圖1示出了根據(jù)本發(fā)明的實施例的網(wǎng)頁瀏覽方法的總體流程圖。
[0051]如圖1所示,首先,在步驟S10,例如響應于用戶在地址欄輸入URL,或者在網(wǎng)頁上點擊鏈接,從網(wǎng)絡上加載網(wǎng)頁的頁面數(shù)據(jù)后,將所加載的頁面數(shù)據(jù)保存到本地,比如具有網(wǎng)頁瀏覽功能的終端設備的存儲單元中,所述終端設備比如包括臺式計算機、筆記本電腦、智能移動終端、蘋果公司的IPad、個人數(shù)據(jù)助理等。頁面加載流程可以如常規(guī)方式一樣,可以在瀏覽器內核例如WebKit內核中執(zhí)行。在此不再贅述。關于網(wǎng)頁保存步驟,將在下面參照圖3和圖4進行詳細說明。
[0052]在如上進行網(wǎng)頁保存后,如果需要進行離線瀏覽,則在步驟S20,響應于打開所保存的網(wǎng)頁的網(wǎng)頁瀏覽指令,打開本地保存的網(wǎng)頁。下文中將參考圖8至圖9具體說明。
[0053]圖2示出了根據(jù)本發(fā)明的實施例的網(wǎng)頁瀏覽系統(tǒng)I的示意方框圖。
[0054]如圖2所示,網(wǎng)頁瀏覽系統(tǒng)I包括網(wǎng)頁保存裝置10、網(wǎng)頁打開裝置20、存儲單元30以及顯示單元40。
[0055]網(wǎng)頁保存裝置10被配置為在從網(wǎng)絡上加載網(wǎng)頁的頁面數(shù)據(jù)后,將所加載的頁面數(shù)據(jù)保存到本地,比如具有網(wǎng)頁瀏覽功能的終端設備的存儲單元30中。關于網(wǎng)頁保存裝置10,如下將參照圖5和圖6進行更為詳細的描述。
[0056]網(wǎng)頁打開裝置20被配置為在接收到打開所保存的網(wǎng)頁的網(wǎng)頁瀏覽指令后,打開本地(比如終端設備的存儲單元或緩存的本地數(shù)據(jù)庫中)保存的網(wǎng)頁。關于網(wǎng)頁打開裝置20,如下將參照圖10和圖11進行更為具體的描述。
[0057]存儲單元30可以包括高速隨機存取存儲器,也可以包括非易失性存儲器,比如一個或多個磁盤存儲器、閃存裝置或者其它固態(tài)非易失性存儲器。存儲單元30被配置為保存網(wǎng)頁的頁面數(shù)據(jù)、與網(wǎng)頁中包含的AJAX請求對應的AJAX資源。顯示單元40用于顯示網(wǎng)頁數(shù)據(jù)。
[0058]這里要說明的是,網(wǎng)頁保存裝置10和網(wǎng)頁打開裝置20可以利用硬件實現(xiàn),也可以利用軟件實現(xiàn),或者可以利用軟件和硬件相結合實現(xiàn)。比如,網(wǎng)頁保存裝置10和網(wǎng)頁打開裝置20可以利用一個或多個處理器來實現(xiàn)。在這種情況下,存儲單元30還被配置為保存用于執(zhí)行網(wǎng)頁保存裝置10和網(wǎng)頁打開裝置20的功能的應用程序。一個或多個處理器被配置為在接收到網(wǎng)頁保存指令或網(wǎng)頁打開指令后,調用存儲單元30中保存的相應應用程序來實現(xiàn)網(wǎng)頁保存或網(wǎng)頁打開,從而實現(xiàn)網(wǎng)頁保存裝置10和網(wǎng)頁打開裝置20的功能。
[0059]網(wǎng)頁保存方法及網(wǎng)頁保存裝置[0060]下面將參照圖3到圖4具體描述圖1中的網(wǎng)頁保存步驟。圖3示出了根據(jù)本發(fā)明的實施例的網(wǎng)頁保存方法的示意性流程圖;圖4示出了根據(jù)本發(fā)明的另一實施例的網(wǎng)頁保存方法的示意性流程圖。
[0061]如圖3所示,在步驟SllO中,當在從網(wǎng)絡加載網(wǎng)頁后接收到網(wǎng)頁保存指令,則以MHTML格式將該網(wǎng)頁的頁面數(shù)據(jù)保存在本地的存儲單元30中。
[0062]接著,在步驟S120中,判斷所保存的網(wǎng)頁是否包含AJAX請求。在所保存的網(wǎng)頁中不包含AJAX請求時,流程結束。所述AJAX請求是瀏覽器應用程序中的一個請求,其核心是xmlhttprequest,這種請求不用刷新頁面。
[0063]在所保存的網(wǎng)頁中包含AJAX請求時,在步驟S130,將基于所述AJAX請求而獲取的AJAX資源與AJAX請求相關聯(lián)地保存在本地,比如保存在本地的存儲單元中。所述AJAX資源可以是在從網(wǎng)絡加載網(wǎng)頁時,通過網(wǎng)絡從儲存有AJAX資源的網(wǎng)頁服務器下載的?;蛘?,所述AJAX資源也可以通過其它途徑從網(wǎng)頁服務器獲取的。
[0064]這里,AJAX資源可以是與內容數(shù)據(jù)的播放有關的數(shù)據(jù)。例如,在內容數(shù)據(jù)是視頻內容的情況下,AJAX資源可以是視頻內容的視頻(video)標簽。視頻標簽可以涉及視頻的一些屬性等等。在播放視頻內容時,需要獲取視頻標簽。
[0065]這里,所述AJAX請求可以包括AJAX資源的URL地址,所述URL地址指示用于獲取AJAX資源的網(wǎng)絡地址。所述AJAX資源與所述AJAX請求可以以數(shù)據(jù)庫的形式保存在存儲單元30的本地數(shù)據(jù)庫中。對于一個AJAX資源,數(shù)據(jù)庫具有兩個字段key和value,字段key為AJAX資源的URL地址,字段value為對應的數(shù)據(jù),即AJAX資源。這樣,在解析出AJAX請求中包含的URL地址中,就可以在本地數(shù)據(jù)庫中查找對應的AJAX資源。
[0066]此外,上述網(wǎng)頁保存方法可以啟用多進程來實現(xiàn),比如利用一個進程保存頁面數(shù)據(jù),而啟用另一進程來執(zhí)行AJAX資源的保存。在這種情況下,步驟SllO可以與步驟S120、S130并行執(zhí)行,也可以按任意順序依次執(zhí)行。
[0067]圖4示出了根據(jù)本發(fā)明的另一實施例的網(wǎng)頁保存方法的示意性流程圖。圖4中示出的實施例是對圖3中示出的實施例的改進。與圖3相比,圖4中示出的實施例的不同之處僅僅在于利用步驟S131、S133和S135替換圖3中的步驟S130,其它步驟完全相同。為了說明簡便,在此僅僅對不同之處進行說明。
[0068]如圖4所示,在判斷出所保存的網(wǎng)頁中包含AJAX請求時,在步驟S131,在內存中創(chuàng)建用于保存基于所述AJAX請求而獲取的AJAX資源的AJAX資源緩存。接著,在步驟S133,將所述AJAX資源與所述AJAX請求相關聯(lián)地保存在所述AJAX資源緩存中。然后,在步驟S135,將所述AJAX資源緩存中保存的所述AJAX資源,以數(shù)據(jù)庫的形式與所述AJAX請求相關聯(lián)地保存到本地數(shù)據(jù)庫中。
[0069]根據(jù)該實施例,在打開本地保存的網(wǎng)頁的方法在新加載的網(wǎng)頁中包括AJAX請求的情況下,將基于AJAX請求而獲取的AJAX資源緩存在內存中的AJAX緩存中。在一個示例中,可以針對所有頁面中基于AJAX請求獲取的AJAX資源都緩存在AJAX緩存中。在另一示例中,也可以僅在用戶發(fā)出了網(wǎng)頁保存指令的情況下,才啟用AJAX緩存,將這些AJAX資源緩存在AJAX緩存中。這樣,可以減少對內存的消耗。網(wǎng)頁保存指令可以是通過由用戶直接選擇保存網(wǎng)頁的指令而發(fā)起的,也可以是響應于其它指令而激活的。
[0070]這里,以WebKit的情況為例加以進一步說明。WebKit的緩存結構是這樣的:MemoryCache->AppCache->HTTPCache??梢栽?AppCache 和 HTTPCache 之間創(chuàng)建 AJAX 緩存AJAXCache,用于緩存AJAX資源。由于該AJAX緩存在網(wǎng)絡層中實現(xiàn),所以無需修改WebKit的代碼。
[0071 ] 此外,為了節(jié)省內存空間,在圖3和圖4中示出的實施例中,還可以包括AJAX資源緩存情況步驟。比如,可以在瀏覽窗口關閉后,清空AJAX資源緩存中所有與該瀏覽窗口相關的AJAX資源?;蛘撸梢栽趯JAX資源保存到本地數(shù)據(jù)庫中之后、或者當響應于網(wǎng)頁前進或網(wǎng)頁后退指令而重新聯(lián)網(wǎng)加載網(wǎng)頁時,清空AJAX緩存中所緩存的對應于網(wǎng)頁的所有AJAX資源。
[0072]此外,步驟S133中保存AJAX資源的步驟可以在網(wǎng)絡適配層中執(zhí)行,這樣可以避免對WebKit進行修改。當然,上述方法中包含的也可以分別在其它層中執(zhí)行。
[0073]圖5示出了根據(jù)本發(fā)明的實施例的網(wǎng)頁保存裝置10的示意框圖。
[0074]如圖5所示,網(wǎng)頁保存裝置10包括頁面數(shù)據(jù)保存單元110和AJAX資源保存單元120。
[0075]頁面數(shù)據(jù)保存單元110用于在接收到網(wǎng)頁保存指令后,以MHTML格式保存所述網(wǎng)頁的頁面數(shù)據(jù)。AJAX資源保存單元120用于在所述網(wǎng)頁中包含AJAX請求的情況下,將基于所述AJAX請求而獲取的AJAX資源與AJAX請求相關聯(lián)地保存在本地數(shù)據(jù)庫中。
[0076]在本發(fā)明的另一示例中,網(wǎng)頁保存裝置10還可以包括第一判斷單元(未示出),用于判斷所述網(wǎng)頁中是否包含AJAX請求。
[0077]與圖4中示出的網(wǎng)頁保存方法對應,在本發(fā)明的另一實施例中,網(wǎng)頁保存裝置10還可以包括AJAX資源緩存創(chuàng)建單元130和AJAX資源緩存保存單元140。
[0078]AJAX資源緩存創(chuàng)建單元130用于在所述網(wǎng)頁中包括AJAX請求的情況下,在內存中創(chuàng)建用于保存基于所述AJAX請求而獲取的AJAX資源的AJAX資源緩存。AJAX資源緩存保存單元140用于將所述AJAX資源與所述AJAX請求相關聯(lián)地保存在所述AJAX資源緩存中。然后,AJAX資源保存單元將所述AJAX資源緩存中保存的所述AJAX資源,以數(shù)據(jù)庫的形式與所述AJAX請求相關聯(lián)地保存到本地數(shù)據(jù)庫中。
[0079]同樣地,為了節(jié)省內存空間,還可以另外提供AJAX資源緩存清空單元(圖中未示出)。比如,AJAX資源緩存清空單元可以被配置為在瀏覽窗口關閉后,清空AJAX資源緩存中所有與該瀏覽窗口相關的AJAX資源?;蛘撸珹JAX資源緩存清空單元可以被配置為在將AJAX資源保存到本地數(shù)據(jù)庫中之后、或者當響應于網(wǎng)頁前進或網(wǎng)頁后退指令而重新聯(lián)網(wǎng)加載網(wǎng)頁時,清空AJAX緩存中所緩存的對應于網(wǎng)頁的所有AJAX資源。
[0080]在本發(fā)明的一個示例中,可以僅在用戶發(fā)出了網(wǎng)頁保存指令的情況下,才啟用AJAX緩存,將這些AJAX資源緩存在AJAX緩存中。這樣,可以減少對內存的消耗。網(wǎng)頁保存指令可以是通過由用戶直接選擇保存網(wǎng)頁的指令而發(fā)起的,也可以是響應于其它指令而激活的。在這種情況下,網(wǎng)頁保存裝置10還可以包括網(wǎng)頁保存指令激活單元(未示出)。網(wǎng)頁保存指令激活單元被配置為響應于保存頁面數(shù)據(jù)中的內容數(shù)據(jù)的指令,激活保存網(wǎng)頁的指令。
[0081]網(wǎng)頁打開方法及網(wǎng)頁打開裝置
[0082]下面參考圖7至圖11描述根據(jù)本發(fā)明的實施例的網(wǎng)頁打開方法和網(wǎng)頁打開裝置。
[0083]圖7是根據(jù)本發(fā)明的實施例的網(wǎng)頁打開方法的示意流程圖。[0084]如圖7所示,在步驟S210,在接收到瀏覽如圖3中所述的網(wǎng)頁保存方法保存的網(wǎng)頁的網(wǎng)頁瀏覽指令后,基于以所述MHTML格式保存的頁面數(shù)據(jù)進行網(wǎng)頁加載。接著,在步驟S220,判斷在加載所述網(wǎng)頁時,是否產(chǎn)生AJAX請求。如果不產(chǎn)生AJAX請求,則流程結束。
[0085]當在加載所述網(wǎng)頁時產(chǎn)生AJAX請求時,則在步驟S230,從本地讀取與所述AJAX請求對應的AJAX資源。這里,在一個示例中,從本地中讀取與所述AJAX請求對應的AJAX資源可以包括:基于所述AJAX請求,從本地數(shù)據(jù)庫中讀取與所述AJAX請求對應的AJAX資源。或者,在另一示例中,在本地存在所述AJAX資源緩存的情況下,所述從本地中讀取與所述AJAX請求對應的AJAX資源可以包括:基于所述AJAX請求,從所述AJAX資源緩存中讀取與所述AJAX請求對應的AJAX資源。這里,從本地讀取AJAX資源的操作可以在網(wǎng)絡適配層中執(zhí)行,由此可以避免對WebKit代碼進行修改。
[0086]然后,在步驟S240,基于所加載的頁面數(shù)據(jù)以及所讀取的AJAX資源,生成網(wǎng)頁頁面。
[0087]此外,所述AJAX請求可以包括AJAX資源的URL地址,并且所述AJAX資源與所述URL地址相關聯(lián)地保存在所述本地數(shù)據(jù)庫中。圖8示意性地示出了基于AJAX請求中的URL從本地數(shù)據(jù)庫讀取AJAX資源的方法示例的流程圖。
[0088]如圖8所示,在判斷出加載網(wǎng)頁時產(chǎn)生AJAX請求時,首先,在步驟S2310,獲取本地數(shù)據(jù)庫或AJAX資源緩存中保存的AJAX資源的所有URL地址的URL列表。接著,在步驟S2320和S2330,根據(jù)所述AJAX請求中的URL地址,對所述URL列表進行完全匹配查找。
[0089]在所述URL列表中查找到完全匹配的URL地址(步驟S2340的結果為是)時,則在步驟S2340,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源,并且將所獲取的AJAX資源返回給瀏覽器內核(比如Webkit內核)來進行渲染(步驟S2350 )。
[0090]在所述URL列表中未找到完全匹配的URL地址(步驟S2340的結果為否)時,使用所述AJAX請求中的URL的正則表達式進行模糊匹配查找,并且在步驟S2370中,判斷是否存在匹配結果。
[0091]如果不存在匹配結果(步驟S2370的結果為否),則返回空數(shù)據(jù)。如果存在匹配結果(步驟S2370的結果為是),則在步驟S2380,判斷所存在的匹配結果是否多于一條。
[0092]如果查找到唯——條匹配結果(步驟S2380的結果為否),則返回到步驟S2340,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所查找到的URL地址對應的AJAX資源。如果查找到的匹配結果多于一條(步驟S2380的結果為是),則返回空數(shù)據(jù)。
[0093]此外,由于AJAX資源本身是動態(tài)請求的資源,大多數(shù)情況下,請求的URL地址也是動態(tài)變化的,所以發(fā)起查詢時,可以先進行域名判斷,然后進行完全匹配,匹配不中再進行正則表達式模糊匹配以提升效率和命中率。
[0094]通過使用來自本地數(shù)據(jù)庫的AJAX資源,可以執(zhí)行頁面中發(fā)出相應AJAX請求的相關任務。在上面提到的播放視頻的情況下,AJAX資源為視頻標簽。有了視頻標簽,就可以播放已存儲到本地的視頻節(jié)目了。
[0095]由此,即使在斷網(wǎng)的情況下,也可以使用保存在本地數(shù)據(jù)庫中的AJAX資源來響應網(wǎng)頁中的AJAX請求,從而執(zhí)行網(wǎng)頁上的相關任務。在離線視頻的示例中,響應于AJAX請求,從本地數(shù)據(jù)庫中獲取視頻標簽,從而在沒有聯(lián)網(wǎng)的情況下,也可以正常離線播放視頻。
[0096]保存在本地的網(wǎng)頁可以在沒有聯(lián)網(wǎng)的情況下打開,也可以在聯(lián)網(wǎng)狀態(tài)下打開。在聯(lián)網(wǎng)狀態(tài)下,優(yōu)選可以從網(wǎng)絡上來獲取AJAX資源。這樣,當網(wǎng)絡上的AJAX資源發(fā)生變化時,能夠及時使用更新后的AJAX資源。
[0097]圖9給出了圖7所示的網(wǎng)頁打開方法的變型的流程圖。與圖7相比,圖9中示出的實施例的不同之處僅僅在于增加了步驟S940和步驟S950,其它步驟與圖7中完全相同。在此僅僅對所增加的步驟S940和步驟S950進行說明。
[0098]如圖9所示,在步驟S220中判斷出在加載網(wǎng)頁時產(chǎn)生AJAX請求后,在步驟S940,判斷進行網(wǎng)頁瀏覽的終端設備當前是否處于聯(lián)網(wǎng)狀態(tài)。如果處于聯(lián)網(wǎng)狀態(tài),則在步驟S950,通過網(wǎng)絡獲取AJAX資源。隨后,流程進行到步驟S240。
[0099]如果處于斷網(wǎng)狀態(tài),則進行到步驟S230,從本地讀取與AJAX請求對應的AJAX資源。隨后,流程進行到步驟S240。
[0100]圖10是圖2中的網(wǎng)頁打開裝置20的一個實施例的示意性方框圖。如圖2所示,網(wǎng)頁打開裝置20包括頁面數(shù)據(jù)加載單元210、AJAX資源讀取單元220和網(wǎng)頁生成單元230。
[0101]頁面數(shù)據(jù)加載單元210用于在接收到瀏覽如圖3中所述的網(wǎng)頁保存方法保存的網(wǎng)頁的網(wǎng)頁瀏覽指令后,基于以所述MHTML格式保存的頁面數(shù)據(jù)進行網(wǎng)頁加載。AJAX資源讀取單元220用于當在加載所述網(wǎng)頁時產(chǎn)生AJAX請求時,從本地讀取與所述AJAX請求對應的AJAX資源。網(wǎng)頁生成單元230用于基于所加載的頁面數(shù)據(jù)以及所讀取的AJAX資源,生成網(wǎng)頁頁面。
[0102]在本發(fā)明的一個示例中,所述AJAX資源讀取單元可以被配置為基于所述AJAX請求,從本地數(shù)據(jù)庫中讀取與所述AJAX請求對應的AJAX資源來生成所述網(wǎng)頁。
[0103]在本發(fā)明的另一示例中,在本地存在所述AJAX資源緩存的情況下,所述AJAX資源讀取單元可以被配置為基于所述AJAX請求,從所述AJAX資源緩存中讀取與所述AJAX請求對應的AJAX資源。
[0104]此外,在本發(fā)明的另一示例中,網(wǎng)頁打開裝置20還可以包括第二判斷單元(未示出),用于判斷在加載網(wǎng)頁時是否產(chǎn)生AJAX請求。
[0105]此外,所述AJAX請求可以包括AJAX資源的URL地址,以及所述AJAX資源與所述URL地址相關聯(lián)地保存在所述本地數(shù)據(jù)庫中。圖11示出了根據(jù)本發(fā)明的AJAX資源讀取單元220的一個實施例的示意性方框圖。
[0106]如圖11所示,AJAX資源讀取單元220可以包括URL列表獲取單元2210、完全匹配單元2220、模糊匹配單元2230、第一 AJAX資源獲取單元2240和第二 AJAX資源獲取單元2250。
[0107]URL列表獲取單元2210用于獲取本地數(shù)據(jù)庫或AJAX資源緩存中保存的AJAX資源的所有URL地址的URL列表。完全匹配單元2220用于根據(jù)所述AJAX請求中的URL地址,對所述URL列表進行完全匹配查找。在所述URL列表中查找到完全匹配的URL地址時,第一 AJAX資源獲取單元2240從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源。
[0108]在所述URL列表中未找到完全匹配的URL地址時,模糊匹配單元2230使用所述AJAX請求中的URL的正則表達式進行模糊匹配查找。當在模糊匹配時查找到唯一一條匹配結果時,第二 AJAX資源獲取單元2250從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源。當在模糊匹配時沒有查找到匹配結果或者所查找到的匹配結果多于一條,則返回空數(shù)據(jù)。
[0109]在本發(fā)明中,通過添加一個AJAX緩存器,對特定網(wǎng)頁的AJAX請求的資源進行緩存,保存網(wǎng)頁的時候,也將這些AJAX資源也一同保存下來,那么在斷網(wǎng)的情況下,本地也保留著一份數(shù)據(jù),就可以解決斷網(wǎng)情況下,因為無法獲取AJAX請求的資源而導致某些網(wǎng)頁功能不能使用的問題。這樣的話,也就可以解決離線視頻在斷網(wǎng)情況下無法播放的缺陷。
[0110]示例
[0111]下面簡單描述一個本發(fā)明的應用示例。
[0112]針對iPad2.0推出了稍后閱讀+離線視頻的結合。稍后閱讀的實現(xiàn)正是使用MHTML形式的保存形式,可以比較完美地將所有網(wǎng)頁保存下來。但是加上了離線視頻就出問題了。很多網(wǎng)站的視頻控件視頻(video)標簽是通過某個AJAX請求生成的,如果在斷網(wǎng)情況下,那么這個視頻控件無法生成,那么就無法播放離線到本地的視頻。因此,這個功能就因為這個問題存在著最重大的缺陷,網(wǎng)頁保存下來了,視頻也保存下來了,卻不能離線播放。
[0113]根據(jù)本發(fā)明,可以通過建立一個AJAXCache來確保在斷網(wǎng)的情況下也能夠獲取到AJAX資源。
[0114]I)在帶視頻的頁面,如youtube,點擊小電視離線下載視頻。下載離線視頻的同時也會將當前頁面添加到稍后閱讀中進行保存。
[0115]2)對該頁面開啟AJAXCache,所有請求的AJAX資源在AJAXCache中保留一份數(shù)據(jù)。
[0116]3)當頁面在后臺加載完成,保存頁面數(shù)據(jù)到本地,同時保存AJAXCache中對應的AJAX資源到本地,保存成功后,清空這些緩存資源釋放內存。
[0117]4)斷網(wǎng)情況下,打開離線視頻,會打開稍后閱讀保存的本地頁面。頁面在加載的過程中,會產(chǎn)生AJAX請求,查詢AJAX緩存數(shù)據(jù)的數(shù)據(jù)庫,查找對應的數(shù)據(jù),如果有,則返回。
[0118]5)本地頁面在斷網(wǎng)的情況下,可以獲取到AJAX資源,那么該頁面內的所有內容都可以正確生成。
[0119]6)這樣的話,可以直接在保存到本地的youtube視頻頁面上播放離線到本地的視頻,因為video標簽可以正確生成。
[0120]通過上述方法,解決了斷網(wǎng)狀態(tài)下無法播放離線視頻的問題。
[0121]此外,根據(jù)本發(fā)明的方法還可以被實現(xiàn)為由移動終端中的處理器(比如CPU)執(zhí)行的計算機程序,并且存儲在移動終端的存儲器中。在該計算機程序被處理器執(zhí)行時,執(zhí)行本發(fā)明的方法中限定的上述功能。
[0122]此外,根據(jù)本發(fā)明的方法還可以實現(xiàn)為一種計算機程序產(chǎn)品,該計算機程序產(chǎn)品包括計算機可讀介質,在該計算機可讀介質上存儲有用于執(zhí)行本發(fā)明的方法中限定的上述功能的計算機程序。
[0123]此外,上述方法步驟以及系統(tǒng)單元也可以利用控制器以及用于存儲使得控制器實現(xiàn)上述步驟或單元功能的計算機程序的計算機可讀存儲設備實現(xiàn)。
[0124]本領域技術人員還將明白的是,結合這里的公開所描述的各種示例性邏輯塊、模塊、電路和算法步驟可以被實現(xiàn)為電子硬件、計算機軟件或兩者的組合。為了清楚地說明硬件和軟件的這種可互換性,已經(jīng)就各種示意性組件、方塊、模塊、電路和步驟的功能對其進行了一般性的描述。這種功能是被實現(xiàn)為軟件還是被實現(xiàn)為硬件取決于具體應用以及施加給整個系統(tǒng)的設計約束。本領域技術人員可以針對每種具體應用以各種方式來實現(xiàn)所述的功能,但是這種實現(xiàn)決定不應被解釋為導致脫離本發(fā)明的范圍。
[0125]盡管前面公開的內容示出了本發(fā)明的示例性實施例,但是應當注意,在不背離權利要求限定的本發(fā)明的范圍的前提下,可以進行多種改變和修改。根據(jù)這里描述的發(fā)明實施例的方法權利要求的功能、步驟和/或動作不需以任何特定順序執(zhí)行。此外,盡管本發(fā)明的元素可以以個體形式描述或要求,但是也可以設想多個,除非明確限制為單數(shù)。
[0126]雖然如上參照圖描述了根據(jù)本發(fā)明的各個實施例進行了描述,但是本領域技術人員應當理解,對上述本發(fā)明所提出的各個實施例,還可以在不脫離本
【發(fā)明內容】
的基礎上做出各種改進。因此,本發(fā)明的保護范圍應當由所附的權利要求書的內容確定。
【權利要求】
1.一種網(wǎng)頁保存方法,包括: 在接收到網(wǎng)頁保存指令后,以MHTML格式保存所述網(wǎng)頁的頁面數(shù)據(jù); 在所述網(wǎng)頁中包括AJAX請求的情況下,將基于所述AJAX請求而獲取的AJAX資源與AJAX請求相關聯(lián)地保存在本地數(shù)據(jù)庫中。
2.根據(jù)權利要求1所述的網(wǎng)頁保存方法,其中,將基于所述AJAX請求而獲取的AJAX資源保存在本地數(shù)據(jù)庫中包括: 在所述網(wǎng)頁中包括AJAX請求的情況下,在內存中創(chuàng)建用于保存基于所述AJAX請求而獲取的AJAX資源的AJAX資源緩存; 將所述AJAX資源與所述AJAX請求相關聯(lián)地保存在所述AJAX資源緩存中;以及 將所述AJAX資源緩存中保存的所述AJAX資源,以數(shù)據(jù)庫的形式與所述AJAX請求相關聯(lián)地保存到本地數(shù)據(jù)庫中。
3.根據(jù)權利要求2的網(wǎng)頁保存方法,其中,所述AJAX請求包括AJAX資源的URL地址,以及在將所述AJAX資源保存在所述AJAX資源緩存和本地數(shù)據(jù)庫的步驟中,所述AJAX資源與所述URL地址相關聯(lián)地保存。
4.根據(jù)權利要求1至3中任何一項所述的網(wǎng)頁保存方法,其中,所述將所述AJAX資源保存在所述AJAX資源緩存和本地數(shù)據(jù)庫的步驟在網(wǎng)絡適配層中執(zhí)行。
5.一種網(wǎng)頁保存裝置,包括: 頁面數(shù)據(jù)保存單元,用于在接收到網(wǎng)頁保存指令后,以MHTML格式保存所述網(wǎng)頁的頁面數(shù)據(jù);以及 AJAX資源保存單元,用于在所述網(wǎng)頁中包含AJAX請求的情況下,將基于所述AJAX請求而獲取的AJAX資源與AJAX請求相關聯(lián)地保存在本地數(shù)據(jù)庫中。
6.根據(jù)權利要求5的網(wǎng)頁保存裝置,還包括: AJAX資源緩存創(chuàng)建單元,用于在所述網(wǎng)頁中包括AJAX請求的情況下,在內存中創(chuàng)建用于保存基于所述AJAX請求而獲取的AJAX資源的AJAX資源緩存; AJAX資源緩存保存單元,用于將所述AJAX資源與所述AJAX請求相關聯(lián)地保存在所述AJAX資源緩存中,以及 所述AJAX資源保存單元被配置為將所述AJAX資源緩存中保存的所述AJAX資源,以數(shù)據(jù)庫的形式與所述AJAX請求相關聯(lián)地保存到本地數(shù)據(jù)庫中。
7.—種網(wǎng)頁打開方法,包括: 在接收到瀏覽如權利要求1所述保存的網(wǎng)頁的網(wǎng)頁瀏覽指令后,基于以所述MHTML格式保存的頁面數(shù)據(jù)進行網(wǎng)頁加載; 當在加載所述網(wǎng)頁時產(chǎn)生AJAX請求時,從本地讀取與所述AJAX請求對應的AJAX資源;以及 基于所加載的頁面數(shù)據(jù)以及所讀取的AJAX資源,生成網(wǎng)頁頁面。
8.根據(jù)權利要求7的網(wǎng)頁打開方法,其中,所述從本地中讀取與所述AJAX請求對應的AJAX資源包括: 基于所述AJAX請求,從本地數(shù)據(jù)庫中讀取與所述AJAX請求對應的AJAX資源。
9.根據(jù)權利要求7所述的網(wǎng)頁打開方法,其中,所述從本地中讀取與所述AJAX請求對應的AJAX資源包括:在本地存在所述AJAX資源緩存的情況下,基于所述AJAX請求,從所述AJAX資源緩存中讀取與所述AJAX請求對應的AJAX資源。
10.根據(jù)權利要求8或9所述的網(wǎng)頁打開方法,其中,所述AJAX請求包括AJAX資源的URL地址,以及所述AJAX資源與所述URL地址相關聯(lián)地保存在所述本地數(shù)據(jù)庫中,以及 所述從本地中讀取與所述AJAX請求對應的AJAX資源包括: 獲取本地數(shù)據(jù)庫或AJAX資源緩存中保存的AJAX資源的所有URL地址的URL列表; 根據(jù)所述AJAX請求中的URL地址,對所述URL列表進行完全匹配查找; 在所述URL列表中查找到完全匹配的URL地址時,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源; 在所述URL列表中未找到完全匹配的URL地址時,使用所述AJAX請求中的URL的正則表達式進行模糊匹配查找;以及 在查找到唯一一條匹配結果時,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所查找到的URL地址對應的AJAX資源。
11.根據(jù)權利要求7至10中任何一個所述的網(wǎng)頁打開方法,其中,所述從本地讀取與所述AJAX請求對應的AJAX資源的步驟在網(wǎng)絡適配層中執(zhí)行。
12.一種網(wǎng)頁打開裝置,包括: 頁面數(shù)據(jù)加載單元,用于`在接收到瀏覽如權利要求1所述保存的網(wǎng)頁的網(wǎng)頁瀏覽指令后,基于以所述MHTML格式保存的頁面數(shù)據(jù)進行網(wǎng)頁加載; AJAX資源讀取單元,用于當在加載所述網(wǎng)頁時產(chǎn)生AJAX請求時,從本地讀取與所述AJAX請求對應的AJAX資源;以及 網(wǎng)頁生成單元,用于基于所加載的頁面數(shù)據(jù)以及所讀取的AJAX資源,生成網(wǎng)頁頁面。
13.根據(jù)權利要求12的網(wǎng)頁打開裝置,其中,所述AJAX資源讀取單元被配置為基于所述AJAX請求,從本地數(shù)據(jù)庫中讀取與所述AJAX請求對應的AJAX資源來生成所述網(wǎng)頁。
14.根據(jù)權利要求12所述的網(wǎng)頁打開裝置,其中,在本地存在所述AJAX資源緩存的情況下,所述AJAX資源讀取單元被配置為基于所述AJAX請求,從所述AJAX資源緩存中讀取與所述AJAX請求對應的AJAX資源。
15.根據(jù)權利要求12或13所述的網(wǎng)頁打開裝置,其中,所述AJAX請求包括AJAX資源的URL地址,以及所述AJAX資源與所述URL地址相關聯(lián)地保存在所述本地數(shù)據(jù)庫中,以及 所述AJAX資源讀取單元包括: URL列表獲取單元,用于獲取本地數(shù)據(jù)庫或AJAX資源緩存中保存的AJAX資源的所有URL地址的URL列表; 完全匹配單元,用于根據(jù)所述AJAX請求中的URL地址,對所述URL列表進行完全匹配查找; 第一 AJAX資源獲取單元,用于在所述URL列表中查找到完全匹配的URL地址時,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源; 模糊匹配單元,用于在所述URL列表中未找到完全匹配的URL地址時,使用所述AJAX請求中的URL的正則表達式進行模糊匹配查找;以及 第二 AJAX資源獲取單元,用于當在模糊匹配時查找到唯一一條匹配結果時,從所述本地數(shù)據(jù)庫或AJAX資源緩存中讀取與所找到的URL對應的AJAX資源。
16.一種網(wǎng)頁瀏覽系統(tǒng),包括:顯示單元,用于顯示網(wǎng)頁內容;存儲單元;如權利要求5或6所述的網(wǎng)頁保存裝置;以及如權利要求12到15中 任何一個所述的網(wǎng)頁打開裝置。
【文檔編號】G06F17/30GK103699674SQ201310749825
【公開日】2014年4月2日 申請日期:2013年12月31日 優(yōu)先權日:2013年12月31日
【發(fā)明者】趙鴻彬 申請人:優(yōu)視科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1