網(wǎng)頁加載方法及裝置的制造方法
【專利摘要】本公開揭示了一種網(wǎng)頁加載方法及裝置,屬于互聯(lián)網(wǎng)技術(shù)領(lǐng)域。所述網(wǎng)頁加載方法包括:在需要加載網(wǎng)頁時,移動終端確定是否存儲有該網(wǎng)頁的關(guān)鍵資源;在未存儲有該網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送該網(wǎng)頁的第一加載請求;代理服務器接收第一加載請求,獲取網(wǎng)頁的代碼文件和關(guān)鍵資源,向移動終端反饋第一加載應答;移動終端利用第一加載應答中的代碼文件和關(guān)鍵資源,對網(wǎng)頁進行渲染顯示。在代理服務器接收移動終端發(fā)送的加載請求后,直接向移動終端推送網(wǎng)頁的代碼文件和關(guān)鍵資源,以讓移動終端對網(wǎng)頁進行渲染顯示;解決了相關(guān)技術(shù)中移動終端獲取網(wǎng)頁代碼文件后,需要等待服務器反饋關(guān)鍵資源導致網(wǎng)頁渲染時間較長的問題;縮短了網(wǎng)頁渲染的時間。
【專利說明】
網(wǎng)頁加載方法及裝置
技術(shù)領(lǐng)域
[0001]本公開涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,特別涉及一種網(wǎng)頁加載方法及裝置。
【背景技術(shù)】
[0002]生活中人們經(jīng)常通過移動終端安裝的瀏覽器加載網(wǎng)頁,來查閱資料、獲取信息等等。
[0003]瀏覽器在加載網(wǎng)頁時,需要向服務器發(fā)送加載請求,服務器反饋對應的網(wǎng)頁代碼文件,瀏覽器對網(wǎng)頁代碼文件進行解析,確定渲染時需要的關(guān)鍵資源,向服務器發(fā)送用于請求獲取關(guān)鍵資源的資源獲取請求,服務器反饋這些關(guān)鍵資源,終端利用這些關(guān)鍵資源渲染顯不網(wǎng)頁O
[0004]由于移動終端在獲取到網(wǎng)頁代碼文件后,還需要進一步等待服務器反饋關(guān)鍵資源,因此導致網(wǎng)頁渲染的時間較長。
【發(fā)明內(nèi)容】
[0005]本公開提供一種網(wǎng)頁加載方法及裝置。所述技術(shù)方案如下:
[0006]根據(jù)本公開實施例的第一方面,提供一種網(wǎng)頁加載方法,應用于移動終端中,所述方法包括:在需要加載網(wǎng)頁時,確定是否存儲有所述網(wǎng)頁的關(guān)鍵資源;在未存儲有所述網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送所述網(wǎng)頁的第一加載請求,所述第一加載請求用于觸發(fā)所述代理服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源,向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答;接收所述代理服務器反饋的所述第一加載應答;利用所述第一加載應答包括的所述代碼文件和所述關(guān)鍵資源,對所述網(wǎng)頁進行渲染顯示。通過向代理服務器發(fā)送加載請求后,接收代理服務器反饋的網(wǎng)頁的代碼文件和關(guān)鍵資源,利用代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,由于代理服務器會在反饋網(wǎng)頁的代碼文件的同時反饋關(guān)鍵資源,因此移動終端可以先利用代碼文件和關(guān)鍵資源進行網(wǎng)頁渲染,節(jié)省了單獨向代理服務器發(fā)送獲取關(guān)鍵資源的獲取請求以及等待代理服務器反饋關(guān)鍵資源的時間,解決了相關(guān)技術(shù)中移動終端獲取網(wǎng)頁代碼文件后,需要等待服務器反饋關(guān)鍵資源導致網(wǎng)頁渲染時間較長的問題;達到了可以縮短網(wǎng)頁渲染的時間的效果。
[0007]可選的,所述方法還包括:在存儲有所述網(wǎng)頁的關(guān)鍵資源時,獲取所述網(wǎng)頁的關(guān)鍵資源的描述信息;向所述代理服務器發(fā)送添加有所述描述信息的第二加載請求,所述第二加載請求用于觸發(fā)所述代理服務器獲取存儲的與所述網(wǎng)頁對應的代碼文件,根據(jù)描述信息確定出所述網(wǎng)頁的關(guān)鍵資源的差量數(shù)據(jù),向所述移動終端反饋添加有所述差量數(shù)據(jù)以及所述代碼文件的第二加載應答,所述差量數(shù)據(jù)用于反映在所述移動終端存儲的關(guān)鍵資源與所述代理服務器存儲的同一個關(guān)鍵資源之間的差值。通過獲取網(wǎng)頁關(guān)鍵資源的描述信息,將描述信息添加進加載請求中發(fā)送給代理服務器,使得代理服務器收到加載請求的時候,能夠根據(jù)描述信息確定出關(guān)鍵資源的差量數(shù)據(jù),避免了每次加載都需要重新向目標服務器請求完整的資源導致網(wǎng)頁渲染時間延長。
[0008]可選的,所述獲取所述網(wǎng)頁的關(guān)鍵資源的描述信息,包括:查詢所述網(wǎng)頁的每個關(guān)鍵資源;對于查詢到所述網(wǎng)頁的關(guān)鍵資源,將查詢到的且超期的所述網(wǎng)頁的第一類關(guān)鍵資源的描述信息記為查詢到且已超期,計算所述第一類關(guān)鍵資源的哈希值,將所述哈希值添加至所述第一類關(guān)鍵資源的描述信息中;將查詢到的且尚未超期的所述網(wǎng)頁的第二類關(guān)鍵資源的描述信息記為查詢到且尚未超期;將未查詢到的所述網(wǎng)頁的第三類關(guān)鍵資源的描述信息記為未查詢到。通過查詢網(wǎng)頁的關(guān)鍵資源,將三種可能的情況記成不同的描述信息,能夠有效的將加載網(wǎng)頁時需要的資源的信息傳遞給代理服務器,使得代理服務器能夠根據(jù)描述信息直接發(fā)送相關(guān)資源,從而節(jié)省網(wǎng)頁渲染的時間。
[0009]可選的,所述方法還包括:接收所述代理服務器反饋的所述第二加載應答;當所述第二加載應答中僅包含代碼文件時,利用所述代碼文件以及本地存儲的所述網(wǎng)頁的關(guān)鍵資源,渲染顯示所述網(wǎng)頁;當所述第二加載應答中僅包括代碼文件和差量數(shù)據(jù)時,根據(jù)所述差量數(shù)據(jù)以及存儲的與所述差量數(shù)據(jù)對應的原始關(guān)鍵資源,將所述原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)所述應用關(guān)鍵資源、所述代碼文件以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁;當所述第二加載應答中包括代碼文件、差量數(shù)據(jù)和關(guān)鍵資源時,根據(jù)所述差量數(shù)據(jù)以及存儲的與所述差量數(shù)據(jù)對應的原始關(guān)鍵資源,將所述原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)所述應用關(guān)鍵資源、所述代碼文件、所述第二加載應答中包括的關(guān)鍵資源以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁。通過移動終端接收網(wǎng)頁的加載應答,根據(jù)加載應答反饋回來的代碼文件和資源與原始關(guān)鍵資源更新,用來進行網(wǎng)頁渲染顯示,分情況的進行資源合并更新,能夠使得下一次加載時減少關(guān)鍵資源獲取的時間,從而縮短網(wǎng)頁渲染時間,使得用戶能夠更快看到網(wǎng)頁。
[0010]根據(jù)本公開實施例的第二方面,提供一種網(wǎng)頁加載方法,應用于代理服務器中,所述方法包括:接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,所述第一加載請求是所述移動終端首次加載所述網(wǎng)頁時發(fā)送的加載請求;獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源;向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答,所述第一加載應答用于觸發(fā)所述移動終端利用所述代碼文件和所述關(guān)鍵資源對所述網(wǎng)頁進行渲染顯示。通過在首次接收客戶端加載網(wǎng)頁的加載請求時,將網(wǎng)頁的代碼文件和關(guān)鍵資源反饋給移動終端,以讓移動終端根據(jù)代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,解決了相關(guān)技術(shù)方案中服務器接收代碼文件的加載請求后發(fā)回一個響應,再接收關(guān)鍵資源的獲取請求后返回響應,而導致移動終端兩次等待響應導致網(wǎng)頁渲染時間延長的問題,提高了網(wǎng)頁加載的效率。
[0011]可選的,所述獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源,包括:在所述代理服務器未接收過所述網(wǎng)頁的歷史加載請求時,從所述網(wǎng)頁的目標服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的所有資源,提取出所述網(wǎng)頁的關(guān)鍵資源;在所述代理服務器接收過所述網(wǎng)頁的歷史加載請求時,查詢存儲的所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源。通過代理服務器獲取網(wǎng)頁的代碼文件和所有資源,當收到網(wǎng)頁的歷史加載請求時,查詢存儲的該網(wǎng)頁的代碼文件和關(guān)鍵資源即可返回給移動終端對網(wǎng)頁進行渲染顯示;代理服務器向目標服務器獲取的是所有資源,因此不需要等待移動終端發(fā)送關(guān)鍵資源的加載請求才知道需要加載哪些資源;而再次對相同頁面加載時,只返回代碼文件和關(guān)鍵資源,可以縮短資源傳輸?shù)臅r間,讓用戶可以先看到主要的頁面內(nèi)容,從而縮短頁面顯示的時間。
[0012]可選的,所述方法還包括:接收所述移動終端發(fā)送的網(wǎng)頁的第二加載請求,所述第二加載請求包括所述網(wǎng)頁的關(guān)鍵資源的描述信息;獲取存儲的與所述網(wǎng)頁對應的代碼文件;根據(jù)所述描述信息確定出需要向所述移動終端反饋的差量數(shù)據(jù)以及關(guān)鍵資源,所述差量數(shù)據(jù)用于反映在所述移動終端存儲的關(guān)鍵資源與所述代理服務器存儲的同一個關(guān)鍵資源之間的差值;向所述移動終端反饋添加有所述確定出的差量數(shù)據(jù)、關(guān)鍵資源以及所述代碼文件的第二加載應答,所述第二加載應答用于觸發(fā)所述移動終端根據(jù)所述差量數(shù)據(jù)計算所述代理服務器存儲的與得到所述差量數(shù)據(jù)的關(guān)鍵資源,根據(jù)所述計算出的關(guān)鍵資源、所述第二加載應答中的代碼文件以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁。通過代理服務器接收添加有描述信息的加載請求,獲取存儲的網(wǎng)頁的代碼文件,由描述信息確定需要返回的差量數(shù)據(jù)和關(guān)鍵資源,相對于原始資源,只需要傳輸很少的數(shù)據(jù),縮短了數(shù)據(jù)傳輸?shù)臅r間。
[0013]可選的,所述根據(jù)所述描述信息確定出需要向所述移動終端反饋的差量數(shù)據(jù),包括:當一個關(guān)鍵資源的描述信息包括用于指示查詢到且已超期的信息以及哈希值,則根據(jù)所述哈希值確定具備所述哈希值的原始關(guān)鍵資源;獲取存儲的與所述原始關(guān)鍵資源為同一個資源的應用關(guān)鍵資源,計算所述原始關(guān)鍵資源和所述應用關(guān)鍵資源之間的差值,得到與所述原始關(guān)鍵資源對應的差量數(shù)據(jù),所述差量數(shù)據(jù)用于觸發(fā)所述移動終端將所述原始關(guān)鍵資源更新為所述應用關(guān)鍵資源。通過接收添加包括查詢到且已超期的信息和哈希值的加載請求,代理服務器根據(jù)哈希值確定原始關(guān)鍵資源,將原始關(guān)鍵資源與獲取到的關(guān)鍵資源計算得到差值,即可確定需要反饋給移動終端的差量數(shù)據(jù),由于哈希值與每個資源是唯一對應的關(guān)系,因此能夠準備判斷出原始關(guān)鍵資源包括的內(nèi)容,為代理服務器計算差量數(shù)據(jù)提供了依據(jù)。
[0014]根據(jù)本公開實施例的第三方面,提供一種網(wǎng)頁加載裝置,應用于移動終端中,所述裝置包括:確定模塊,被配置為在需要加載網(wǎng)頁時,確定是否存儲有所述網(wǎng)頁的關(guān)鍵資源;第一發(fā)送模塊,被配置為在所述確定模塊確定出未存儲有所述網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送所述網(wǎng)頁的第一加載請求,所述第一加載請求用于觸發(fā)所述代理服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源,向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答;第一接收模塊,被配置為接收所述代理服務器反饋的所述第一加載應答;第一渲染模塊,被配置為利用所述第一加載應答包括的所述代碼文件和所述關(guān)鍵資源,對所述網(wǎng)頁進行渲染顯示。
[0015]可選的,所述裝置還包括:獲取模塊,被配置為在所述確定模塊確定出存儲有所述網(wǎng)頁的關(guān)鍵資源時,獲取所述網(wǎng)頁的關(guān)鍵資源的描述信息;第二發(fā)送模塊,被配置為向所述代理服務器發(fā)送添加有所述描述信息的第二加載請求,所述第二加載請求用于觸發(fā)所述代理服務器獲取存儲的與所述網(wǎng)頁對應的代碼文件,根據(jù)描述信息確定出所述網(wǎng)頁的關(guān)鍵資源的差量數(shù)據(jù),向所述移動終端反饋添加有所述差量數(shù)據(jù)以及所述代碼文件的第二加載應答,所述差量數(shù)據(jù)用于反映在所述移動終端存儲的關(guān)鍵資源與所述代理服務器存儲的同一個關(guān)鍵資源之間的差值。
[0016]可選的,所述獲取模塊,包括:查詢子模塊,被配置為查詢所述網(wǎng)頁的每個關(guān)鍵資源;第一標記子模塊,被配置為對于所述查詢子模塊查詢到的所述網(wǎng)頁的關(guān)鍵資源,將所述查詢子模塊查詢到的且超期的所述網(wǎng)頁的第一類關(guān)鍵資源的描述信息記為查詢到且已超期,計算所述第一類關(guān)鍵資源的哈希值,將所述哈希值添加至所述第一類關(guān)鍵資源的描述信息中;第二標記子模塊,被配置為將所述查詢子模塊查詢到的且尚未超期的所述網(wǎng)頁的第二類關(guān)鍵資源的描述信息記為查詢到且尚未超期;第三標記子模塊,被配置為將所述查詢子模塊未查詢到的所述網(wǎng)頁的第三類關(guān)鍵資源的描述信息記為未查詢到。
[0017]可選的,所述裝置還包括:第二接收模塊,被配置為接收所述代理服務器反饋的所述第二加載應答;第二渲染模塊,被配置為當所述第二加載應答中僅包含代碼文件時,利用所述代碼文件以及本地存儲的所述網(wǎng)頁的關(guān)鍵資源,渲染顯示所述網(wǎng)頁;第三渲染模塊,被配置為當所述第二加載應答中僅包括代碼文件和差量數(shù)據(jù)時,根據(jù)所述差量數(shù)據(jù)以及存儲的與所述差量數(shù)據(jù)對應的原始關(guān)鍵資源,將所述原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)所述應用關(guān)鍵資源、所述代碼文件以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁;第四渲染模塊,被配置為當所述第二加載應答中包括代碼文件、差量數(shù)據(jù)和關(guān)鍵資源時,根據(jù)所述差量數(shù)據(jù)以及存儲的與所述差量數(shù)據(jù)對應的原始關(guān)鍵資源,將所述原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)所述應用關(guān)鍵資源、所述代碼文件、所述第二加載應答中包括的關(guān)鍵資源以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁。
[0018]根據(jù)本公開實施例的第四方面,提供一種網(wǎng)頁加載裝置,應用于代理服務器中,所述裝置包括:第一接收模塊,被配置為接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,所述第一加載請求是所述移動終端首次加載所述網(wǎng)頁時發(fā)送的加載請求;第一獲取模塊,被配置為獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源;第一反饋模塊,被配置為向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答,所述第一加載應答用于觸發(fā)所述移動終端利用所述代碼文件和所述關(guān)鍵資源對所述網(wǎng)頁進行渲染顯示。
[0019]可選的,所述第一獲取模塊,包括:第一獲取子模塊,被配置為在所述代理服務器未接收過所述網(wǎng)頁的歷史加載請求時,從所述網(wǎng)頁的目標服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的所有資源,提取出所述網(wǎng)頁的關(guān)鍵資源;查詢子模塊,被配置為在所述代理服務器接收過所述網(wǎng)頁的歷史加載請求時,查詢存儲的所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源。
[0020]可選的,所述裝置還包括:第二接收模塊,被配置為接收所述移動終端發(fā)送的網(wǎng)頁的第二加載請求,所述第二加載請求包括所述網(wǎng)頁的關(guān)鍵資源的描述信息;第二獲取模塊,被配置為獲取存儲的與所述網(wǎng)頁對應的代碼文件;確定模塊,被配置為根據(jù)所述描述信息確定出需要向所述移動終端反饋的差量數(shù)據(jù)以及關(guān)鍵資源,所述差量數(shù)據(jù)用于反映在所述移動終端存儲的關(guān)鍵資源與所述代理服務器存儲的同一個關(guān)鍵資源之間的差值;第二反饋模塊,被配置為向所述移動終端反饋添加有所述確定出的差量數(shù)據(jù)、關(guān)鍵資源以及所述代碼文件的第二加載應答,所述第二加載應答用于觸發(fā)所述移動終端根據(jù)所述差量數(shù)據(jù)計算所述代理服務器存儲的與得到所述差量數(shù)據(jù)的關(guān)鍵資源,根據(jù)所述計算出的關(guān)鍵資源、所述第二加載應答中的代碼文件以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁。
[0021]可選的,所述確定模塊,包括:確定子模塊,被配置為當一個關(guān)鍵資源的描述信息包括用于指示查詢到且已超期的信息以及哈希值,則根據(jù)所述哈希值確定具備所述哈希值的原始關(guān)鍵資源;第二獲取子模塊,被配置為獲取存儲的與所述原始關(guān)鍵資源為同一個資源的應用關(guān)鍵資源,計算所述原始關(guān)鍵資源和所述應用關(guān)鍵資源之間的差值,得到與所述原始關(guān)鍵資源對應的差量數(shù)據(jù),所述差量數(shù)據(jù)用于觸發(fā)所述移動終端將所述原始關(guān)鍵資源更新為所述應用關(guān)鍵資源。
[0022]根據(jù)本公開實施例的第五方面,提供一種網(wǎng)頁加載裝置,應用于移動終端中,所述裝置包括:處理器;用于存儲處理器可執(zhí)行指令的存儲器;其中,所述處理器被配置為:在需要加載網(wǎng)頁時,確定是否存儲有所述網(wǎng)頁的關(guān)鍵資源;在未存儲有所述網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送所述網(wǎng)頁的第一加載請求,所述第一加載請求用于觸發(fā)所述代理服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源,向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答;接收所述代理服務器反饋的所述第一加載應答;利用所述第一加載應答包括的所述代碼文件和所述關(guān)鍵資源,對所述網(wǎng)頁進行渲染顯不O
[0023]根據(jù)本公開實施例的第六方面,提供一種網(wǎng)頁加載裝置,應用于代理服務器中,所述裝置包括:處理器;用于存儲處理器可執(zhí)行指令的存儲器;其中,所述處理器被配置為:接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,所述第一加載請求是所述移動終端首次加載所述網(wǎng)頁時發(fā)送的加載請求;獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源;向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答,所述第一加載應答用于觸發(fā)所述移動終端利用所述代碼文件和所述關(guān)鍵資源對所述網(wǎng)頁進行渲染顯示。
[0024]應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性的,并不能限制本公開。
【附圖說明】
[0025]此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本公開的實施例,并與說明書一起用于解釋本公開的原理。
[0026]圖1是根據(jù)部分示例性實施例示出的網(wǎng)頁加載方法所涉及的實施環(huán)境示意圖;
[0027]圖2是根據(jù)一示例性實施例示出的一種網(wǎng)頁加載方法的流程圖;
[0028]圖3A是根據(jù)另一示例性實施例示出的一種網(wǎng)頁加載方法的流程圖;
[0029]圖3B是根據(jù)再一示例性實施例示出的一種網(wǎng)頁加載方法的流程圖;
[0030]圖3C是根據(jù)一示例性實施例示出的一種獲取網(wǎng)頁的關(guān)鍵資源的描述信息的流程圖;
[0031]圖3D是根據(jù)一示例性實施例示出的一種根據(jù)描述信息確定出需要向移動終端反饋的差量數(shù)據(jù)的流程圖;
[0032]圖4是根據(jù)一示例性實施例示出的一種網(wǎng)頁加載裝置的框圖;
[0033]圖5是根據(jù)另一示例性實施例示出的一種網(wǎng)頁加載裝置的框圖;
[0034]圖6是根據(jù)再一示例性實施例示出的一種網(wǎng)頁加載裝置的框圖;
[0035]圖7是根據(jù)再一示例性實施例示出的一種網(wǎng)頁加載裝置的框圖;
[0036]圖8是根據(jù)一示例性實施例示出的一種用于網(wǎng)頁加載的裝置的框圖;
[0037]圖9是根據(jù)另一示例性實施例示出的一種用于網(wǎng)頁加載的裝置的框圖。
【具體實施方式】
[0038]這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本公開相一致的所有實施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本公開的一些方面相一致的裝置和方法的例子。
[0039]圖1是根據(jù)部分示例性實施例示出的網(wǎng)頁加載方法所涉及的實施環(huán)境示意圖,該實施環(huán)境包括代理服務器110,至少一個移動終端120,至少一個目的服務器130。
[0040]代理服務器110和移動終端120之間可以通過預定協(xié)議傳輸信息,也可以通過現(xiàn)有的網(wǎng)絡(luò)傳輸協(xié)議傳輸信息。比如,現(xiàn)有常見的網(wǎng)絡(luò)傳輸協(xié)議可以為超文本傳輸協(xié)議(英文:HyperText Transfer Protocol,http)等。
[0041]代理服務器110和目的服務器130之間可以通過現(xiàn)有的網(wǎng)絡(luò)傳輸協(xié)議傳輸信息。
[0042]—般的,移動終端120在利用網(wǎng)頁的地址訪問網(wǎng)頁時,會直接將訪問請求推送至代理服務器110,代理服務器110在未存儲有該網(wǎng)頁的代碼文件和資源時,則可以為該移動終端120從該地址對應的目的服務器130獲取該網(wǎng)頁的代碼文件和網(wǎng)頁的所有資源;如果代理服務器110在存儲有該網(wǎng)頁的代碼文件和資源時,可以直接利用存儲的該網(wǎng)頁的代碼文件和資源為移動終端120提供服務。
[0043]這里所講的移動終端120可以為具備網(wǎng)絡(luò)瀏覽功能的設(shè)備,比如智能手機、平板電腦、臺式電腦、多媒體播放器等。
[0044]這里的目的服務器130均具備唯一的域名。移動終端120請求訪問的任一個網(wǎng)頁均會對應唯一的目的服務器130。
[0045]代理服務器110可以為一臺服務器,也可以是多臺服務器的集群,當代理服務器110為多臺服務器的集群時,多臺服務器之間的數(shù)據(jù)可以共享。
[0046]圖2是根據(jù)一示例性實施例示出的一種網(wǎng)頁加載方法的流程圖,如圖2所示,該網(wǎng)頁加載方法主要以應用于圖1所示的實施環(huán)境中進行舉例說明,該網(wǎng)頁加載方法包括以下步驟。
[0047]在步驟201中,移動終端在需要加載網(wǎng)頁時,確定是否存儲有該網(wǎng)頁的關(guān)鍵資源。
[0048]當用戶觸發(fā)了顯示某個網(wǎng)頁的鏈接地址,或者觸發(fā)了用于引導顯示某個網(wǎng)頁的其他內(nèi)容,此時,移動終端則需要對該網(wǎng)頁進行加載。
[0049]—般來講,移動終端加載過一個網(wǎng)頁后,通常會緩存加載的網(wǎng)頁的相關(guān)信息,比如網(wǎng)頁的資源等。這些資源會存儲在移動終端一段時間之后失效或過期,網(wǎng)頁資源緩存的這段時間一般是由提供資源的目的服務器決定的。
[0050]實際應用中,移動終端在需要加載網(wǎng)頁時,可以確定是否存儲有網(wǎng)頁的關(guān)鍵資源。
[0051]這里所講的關(guān)鍵資源一般是指網(wǎng)頁在渲染時能代表網(wǎng)頁整體內(nèi)容的資源,也即,當網(wǎng)頁中的關(guān)鍵資源被渲染顯示后,用戶即可得知該網(wǎng)頁的整體內(nèi)容。
[0052]網(wǎng)頁中除了包含關(guān)鍵資源以外,還可以包含非關(guān)鍵資源,這些非關(guān)鍵資源并不能很大程度上影響網(wǎng)頁的內(nèi)容顯示,通常在進行網(wǎng)頁渲染后,會先根據(jù)關(guān)鍵資源進行渲染,讓用戶盡可能快的得知網(wǎng)頁的內(nèi)容,然后再獲取非關(guān)鍵資源,根據(jù)非關(guān)鍵資源進行網(wǎng)頁內(nèi)容的渲染,以讓用戶得知網(wǎng)頁的全部內(nèi)容。
[0053]這里的資源可以是不同格式的文件,比如可以是后綴名為.css的層疊樣式表,也可以是后綴名為.js的JavaScript文件,還可以是后綴名為.jpg的圖片,這里不對資源的具體格式進行限定。
[0054]在步驟202中,移動終端在未存儲有該網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送該網(wǎng)頁的第一加載請求。
[0055]當移動終端在未存儲有該網(wǎng)頁的關(guān)鍵資源時,意味著移動終端必須從服務器獲取該網(wǎng)頁的關(guān)鍵資源,因此此時根據(jù)移動終端與代理服務器之間的傳輸協(xié)議,向代理服務器發(fā)送該網(wǎng)頁的加載請求。這里的傳輸協(xié)議可以是移動終端與代理服務器預先協(xié)商好的,可以不是常見的http協(xié)議。
[0056]在步驟203中,代理服務器接收移動終端發(fā)送的網(wǎng)頁的第一加載請求。
[0057]在步驟204中,代理服務器獲取該網(wǎng)頁的代碼文件以及該網(wǎng)頁的關(guān)鍵資源。
[0058]代理服務器在接收到移動終端發(fā)送的網(wǎng)頁的加載請求后,會獲取該網(wǎng)頁的代碼文件和關(guān)鍵資源。
[0059]這里所講的代碼文件一般是指網(wǎng)頁的主文檔,也即常見的網(wǎng)頁的超文本標記語言(英文:HyperText Markup Language,html)文檔。代碼文件與關(guān)鍵資源可以用于網(wǎng)頁的清染顯示,代碼文件可以定義網(wǎng)頁上的圖片、文字、鏈接等資源分別位于網(wǎng)頁的哪個位置,以什么樣的形式展示等,可見,代碼文件限定了網(wǎng)頁中各個元素的布局和顯示形式等。
[0060]在步驟205中,代理服務器向移動終端反饋包括代碼文件和網(wǎng)頁的關(guān)鍵資源的第一加載應答。
[0061]為了減少移動終端對關(guān)鍵資源的等待時長,這里選擇將網(wǎng)頁的代碼文件和關(guān)鍵資源一同發(fā)送至移動終端,也即將網(wǎng)頁的代碼文件和關(guān)鍵資源添加至第一加載應答中。很顯然,這里的加載應答的傳輸也是利用移動終端與代理服務器之間預先協(xié)商的傳輸協(xié)議。
[0062]在步驟206中,移動終端接收代理服務器反饋的第一加載應答。
[0063]在步驟207中,移動終端利用第一加載應答包括的代碼文件和關(guān)鍵資源,對網(wǎng)頁進行渲染顯示。
[0064]移動終端在接收到網(wǎng)頁的代碼文件和關(guān)鍵資源之后,可以對網(wǎng)頁的代碼進行解析,解析確定出的關(guān)鍵資源的描述信息,利用關(guān)鍵資源的描述信息以及關(guān)鍵資源進行網(wǎng)頁內(nèi)容的渲染顯示,這樣,移動終端則可以顯示出網(wǎng)頁的關(guān)鍵資源。
[0065]需要說明的一點是,其中步驟201、步驟202、步驟206和步驟207可以單獨實現(xiàn)成為以移動終端為執(zhí)行主體的網(wǎng)頁加載方法,其中步驟203、步驟204和步驟205可以單獨實現(xiàn)成為以代理服務器為執(zhí)行主體的網(wǎng)頁加載方法。
[0066]綜上所述,本公開實施例中提供的網(wǎng)頁加載方法,通過移動終端向代理服務器發(fā)送加載請求后,接收代理服務器反饋的網(wǎng)頁的代碼文件和關(guān)鍵資源,利用代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,由于代理服務器會在反饋網(wǎng)頁的代碼文件的同時反饋關(guān)鍵資源,因此移動終端可以先利用代碼文件和關(guān)鍵資源進行網(wǎng)頁渲染,節(jié)省了單獨向代理服務器發(fā)送獲取關(guān)鍵資源的獲取請求以及等待代理服務器反饋關(guān)鍵資源的時間,解決了相關(guān)技術(shù)中移動終端獲取網(wǎng)頁代碼文件后,需要等待服務器反饋關(guān)鍵資源導致網(wǎng)頁渲染時間較長的問題;達到了可以縮短網(wǎng)頁渲染的時間的效果。通過代理服務器在首次接收客戶端加載網(wǎng)頁的加載請求時,將網(wǎng)頁的代碼文件和關(guān)鍵資源反饋給移動終端,以讓移動終端根據(jù)代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,解決了相關(guān)技術(shù)方案中服務器接收代碼文件的加載請求后發(fā)回一個響應,再接收關(guān)鍵資源的獲取請求后返回響應,而導致移動終端兩次等待響應導致網(wǎng)頁渲染時間延長的問題,提高了網(wǎng)頁加載的效率。
[0067]圖3A是根據(jù)另一示例性實施例示出的一種網(wǎng)頁加載方法的流程圖,如圖3A所示,該網(wǎng)頁加載方法主要以應用于圖1所示的實施環(huán)境中進行舉例說明,該網(wǎng)頁加載方法包括以下步驟。
[0068]在步驟301中,移動終端在需要加載網(wǎng)頁時,確定是否存儲有該網(wǎng)頁的關(guān)鍵資源。
[0069]在步驟302中,移動終端在未存儲有該網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送該網(wǎng)頁的第一加載請求。
[0070]在步驟303中,代理服務器接收移動終端發(fā)送的網(wǎng)頁的第一加載請求。
[0071]步驟301至步驟303分別與步驟201至步驟203類似,具體可以參見對步驟201至步驟203的描述,這里就不再贅述。
[0072]在步驟304中,代理服務器在未接收過該網(wǎng)頁的歷史加載請求時,從該網(wǎng)頁的目標服務器獲取該網(wǎng)頁的代碼文件以及該網(wǎng)頁的所有資源,提取出該網(wǎng)頁的關(guān)鍵資源。
[0073]代理服務器未接收過該網(wǎng)頁的歷史加載請求,表明沒有任何一個移動終端曾經(jīng)向該代理服務器發(fā)送過該網(wǎng)頁的加載請求,而代理服務器所存儲的網(wǎng)頁打代碼文件和資源均是在第一個移動終端的加載請求后的觸發(fā)下,從該網(wǎng)頁的目標服務器獲取的,因此代理服務器需要從該網(wǎng)頁的目標服務器獲取該網(wǎng)頁的代碼文件以及該網(wǎng)頁的所有資源。
[0074]在實際應用中,代理服務器可以向該目標服務器發(fā)送關(guān)于該網(wǎng)頁的http請求,目標服務器根據(jù)現(xiàn)有的http協(xié)議向該代理服務器反饋該網(wǎng)頁的代碼文件,代理服務器對該代碼文件進行解析,解析出該代碼文件所涉及的所有資源,向該目標服務器請求獲取這些資源的資源獲取請求,目標服務器根據(jù)該資源獲取請求向代理服務器反饋該網(wǎng)頁所涉及的資源。這樣,代理服務器則可以存儲該網(wǎng)頁的代碼文件以及所有資源,且這些網(wǎng)頁的代碼文件和資源還會為其他各個移動終端服務。
[0075]代理服務器在獲取到該網(wǎng)頁的所有資源后,可以從該網(wǎng)頁的所有資源中提取出關(guān)鍵資源。
[0076]在步驟305中,代理服務器向移動終端反饋包括代碼文件和網(wǎng)頁的關(guān)鍵資源的第一加載應答。
[0077]為了能夠讓移動終端能夠較快的顯示網(wǎng)頁,代理服務器可以將提取出的該網(wǎng)頁的關(guān)鍵資源以及該網(wǎng)頁的代碼文件同時發(fā)送至移動終端,也即將網(wǎng)頁的代碼文件和關(guān)鍵資源添加至第一加載應答中。很顯然,這里的加載應答的傳輸也是利用移動終端與代理服務器之間預先協(xié)商的傳輸協(xié)議。
[0078]在步驟306中,移動終端接收代理服務器反饋的第一加載應答。
[0079]在步驟307中,移動終端利用第一加載應答包括的代碼文件和關(guān)鍵資源,對網(wǎng)頁進行渲染顯示。
[0080]步驟306和步驟307分別與步驟206和步驟207類似,具體可以參見對步驟206和步驟207的描述,這里就不再贅述。
[0081 ]綜上所述,本公開實施例中提供的網(wǎng)頁加載方法,通過代理服務器接收移動終端發(fā)送的加載請求來直接獲取網(wǎng)頁的代碼文件和關(guān)鍵資源反饋給移動終端對網(wǎng)頁進行渲染顯示;解決了相關(guān)技術(shù)中移動終端獲取網(wǎng)頁代碼文件后,需要等待服務器反饋關(guān)鍵資源導致網(wǎng)頁渲染時間較長的問題;而代理服務器直接獲取代碼文件和關(guān)鍵資源縮短了網(wǎng)頁渲染的時間。
[0082]在實際應用中,移動終端中在存儲有網(wǎng)頁的關(guān)鍵資源時,為了盡可能的減少這些有效的關(guān)鍵資源對流量的占用,移動終端可以將關(guān)鍵資源的描述信息告知給代理服務器,由代理服務器選擇性的回復關(guān)鍵資源,也即在步驟301之后,還可以執(zhí)行圖3B所示的步驟。
[0083]圖3B是根據(jù)再一示例性實施例示出的一種網(wǎng)頁加載方法的流程圖,如圖3B所示,該網(wǎng)頁加載方法主要以應用于圖1所示的實施環(huán)境中進行舉例說明,該網(wǎng)頁加載方法包括以下步驟。
[0084]在步驟308中,移動終端在存儲有該網(wǎng)頁的關(guān)鍵資源時,獲取該網(wǎng)頁的關(guān)鍵資源的描述信息。
[0085]移動終端在存儲有該網(wǎng)頁的關(guān)鍵資源時,表明該移動終端最近加載過該網(wǎng)頁,此時該網(wǎng)頁的有些關(guān)鍵資源可能是可以直接使用的,此時則可以避免有效資源的流量占用。
[0086]由于移動終端需要確定出有效的關(guān)鍵資源以及無效的關(guān)鍵資源,還需要將這些關(guān)鍵資源的描述信息告知給代理服務器,因此移動終端首先需要獲取該網(wǎng)頁的關(guān)鍵資源的描述信息,該過程可以包括圖3C示出的步驟。
[0087]在步驟308a中,查詢該網(wǎng)頁的每個關(guān)鍵資源。
[0088]—般來講,移動終端在加載過某個網(wǎng)頁后,可以將該網(wǎng)頁的網(wǎng)頁地址以及該網(wǎng)頁所涉及的關(guān)鍵資源進行對應緩存,因此移動終端在需要加載某個網(wǎng)頁地址時,則可以根據(jù)該網(wǎng)頁地址進行索引,以查找到換成的該網(wǎng)頁所對應的關(guān)鍵資源。
[0089]在步驟308b中,對于查詢到網(wǎng)頁的關(guān)鍵資源,將查詢到的且超期的網(wǎng)頁的第一類關(guān)鍵資源的描述信息記為查詢到且已超期,計算第一類關(guān)鍵資源的哈希值,將哈希值添加至第一類關(guān)鍵資源的描述信息中。
[0090]當關(guān)鍵資源超期時,通常表明該關(guān)鍵資源可能被更改過,因此需要更新該關(guān)鍵資源,但考慮到超期的關(guān)鍵資源的更改可能會與超期的關(guān)鍵資源存儲一定的相似性,為了減少下載整個關(guān)鍵資源所占用的流量,因此可以下載這類關(guān)鍵資源的差量數(shù)據(jù),而下載這些關(guān)鍵資源的差量數(shù)據(jù)的前提是需要告知代理服務器該過期的關(guān)鍵資源是哪個版本的,以便于代理服務器根據(jù)查找到的版本以及最新的版本確定差量數(shù)據(jù)。而關(guān)鍵資源一般不會存儲版本號,因此本實施例中采用關(guān)鍵資源的哈希值。
[0091]這里所講的哈希值是與每一個資源唯一對應的二進制值,用于區(qū)分不同的資源。不同的資源具備不同的二進制數(shù)值,可以利用這些二進制數(shù)值計算唯一與二進制數(shù)值對應的哈希值,這樣哈希值則唯一對應一個資源,或一個版本的資源。
[0092]為了能夠讓代理服務器反饋該過期關(guān)鍵資源與對應的最新的關(guān)鍵資源之間的差量數(shù)據(jù),移動終端需要將該類關(guān)鍵資源的哈希值作為其描述信息的一部分,以通知給代理服務器。
[0093]在步驟308c中,將查詢到的且尚未超期的網(wǎng)頁的第二類關(guān)鍵資源的描述信息記為查詢到且尚未超期。
[0094]移動終端可以直接使用本地的這些尚未超期的關(guān)鍵資源,但仍需要告知代理服務器,以避免代理服務器重復下發(fā)這類尚未超期的第二類關(guān)鍵資源。
[0095]在步驟308d中,將未查詢到的網(wǎng)頁的第三類關(guān)鍵資源的描述信息記為未查詢到。
[0096]在步驟309中,移動終端向代理服務器發(fā)送添加有描述信息的第二加載請求。
[0097]在步驟310中,代理服務器接收移動終端發(fā)送的網(wǎng)頁的第二加載請求。
[0098]在步驟311中,在代理服務器接收過該網(wǎng)頁的歷史加載請求時,代理服務器獲取存儲的與該網(wǎng)頁對應的代碼文件。
[0099]一般來講,一旦移動終端與代理服務器架構(gòu)完成之后,移動終端均經(jīng)過代理服務器訪問網(wǎng)頁地址,因此當移動終端能夠查詢到本地存儲的網(wǎng)頁的資源時,表明該移動終端訪問過網(wǎng)頁地址,此時也可以認為該移動終端通過代理服務器訪問過該網(wǎng)頁地址,因此代理服務器會存儲有該網(wǎng)頁的代碼文件以及所有資源。
[0100]也因此,在代理服務器接收過該網(wǎng)頁的歷史加載請求時,代理服務器可以獲取本地存儲的與該網(wǎng)頁對應的代碼文件。
[0101]在步驟312中,代理服務器根據(jù)描述信息確定出需要向移動終端反饋的差量數(shù)據(jù)以及關(guān)鍵資源。
[0102]這里所講的差量數(shù)據(jù)用于反映在移動終端存儲的關(guān)鍵資源與代理服務器存儲的同一個關(guān)鍵資源之間的差值。
[0103]代理服務器根據(jù)描述信息確定出需要向移動終端反饋的差量數(shù)據(jù)時,可以參見步驟3D所示出的步驟。
[0104]在步驟312a中,當一個關(guān)鍵資源的描述信息包括用于指示查詢到且已超期的信息以及哈希值,則根據(jù)哈希值確定具備哈希值的原始關(guān)鍵資源。
[0105]—般來講,代理服務器可以存儲資源的各個歷史關(guān)鍵資源,這樣根據(jù)各個歷史關(guān)鍵資源的哈希值,就可以匹配出接收的描述信息中的哈希值所對應的歷史關(guān)鍵資源。
[0106]可選的,代理服務器也可以在預定時刻從服務器獲取最新的資源,并替換原始的資源,此時這些原始的資源還可能被丟棄或覆蓋,因此代理服務器根據(jù)描述信息的哈希值無法從本地找到匹配的資源時,可以直接將該哈希值所對應的最新資源推送給移動終端;可選的,代理服務器根據(jù)描述信息的哈希值無法從本地找到匹配的資源時,也可以向該網(wǎng)頁所對應的目的服務器獲取,如果仍舊獲取不到,則可以直接將該哈希值所對應的最新資源推送給移動終端。
[0107]在步驟312b中,獲取存儲的與原始關(guān)鍵資源為同一個資源的應用關(guān)鍵資源,計算原始關(guān)鍵資源和應用關(guān)鍵資源之間的差值,得到與原始關(guān)鍵資源對應的差量數(shù)據(jù)。
[0108]這里所講的應用關(guān)鍵資源即至代理服務器中存儲的與該原始關(guān)鍵資源為同一個資源的最新的關(guān)鍵資源。
[0109]在步驟313中,代理服務器向移動終端反饋添加有確定出的差量數(shù)據(jù)、關(guān)鍵資源以及代碼文件的第二加載應答。
[0110]當代理服務器確定出差量數(shù)據(jù)后,可以將差量數(shù)據(jù)添加至第二加載應答中,當代理服務器確定出移動終端尚未存儲的該網(wǎng)頁的關(guān)鍵資源,則可以將這些關(guān)鍵資源添加至第二加載應答中,此外,代理服務器應第二加載請求,還會將該網(wǎng)頁的代碼文件添加至第二加載應答中。
[0111]在步驟314中,移動終端接收代理服務器反饋的第二加載應答。
[0112]在步驟315中,當?shù)诙虞d應答中僅包含代碼文件時,移動終端利用代碼文件以及本地存儲的網(wǎng)頁的關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0113]當?shù)诙虞d應答中僅包含代碼文件時,表明該網(wǎng)頁的關(guān)鍵資源均存儲在移動終端本地且均未過期,此時,移動終端則可以直接利用代碼文件以及本地存儲的網(wǎng)頁的關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0114]在步驟316中,當?shù)诙虞d應答中僅包括代碼文件和差量數(shù)據(jù)時,移動終端根據(jù)差量數(shù)據(jù)以及存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源,將原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)應用關(guān)鍵資源、代碼文件以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0115]當?shù)诙虞d應答中僅包括代碼文件和差量數(shù)據(jù)時,表明該網(wǎng)頁的關(guān)鍵資源除了差量數(shù)據(jù)對應的關(guān)鍵資源過期外,該網(wǎng)頁的其他關(guān)鍵資源均在本地存儲且未過期,此時,移動終端則可以根據(jù)差量數(shù)據(jù)以及存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源,將原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)應用關(guān)鍵資源、代碼文件以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0116]在步驟317中,當?shù)诙虞d應答中包括代碼文件、差量數(shù)據(jù)和關(guān)鍵資源時,根據(jù)差量數(shù)據(jù)以及存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源,將原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)應用關(guān)鍵資源、代碼文件、第二加載應答中包括的關(guān)鍵資源以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0117]當?shù)诙虞d應答中包括代碼文件、差量數(shù)據(jù)和關(guān)鍵資源時,表明該網(wǎng)頁的關(guān)鍵資源除了差量數(shù)據(jù)對應的關(guān)鍵資源過期且未存儲第二加載應答中包括的關(guān)鍵資源外,該網(wǎng)頁的其他關(guān)鍵資源均在本地存儲且未過期,此時,移動終端則可以根據(jù)差量數(shù)據(jù)以及存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源,將原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)應用關(guān)鍵資源、代碼文件、第二加載應答中包括的關(guān)鍵資源以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯不網(wǎng)頁O
[0118]舉例來講,移動終端在發(fā)出對網(wǎng)頁a.html的加載請求時,移動終端先在本地查找該網(wǎng)頁與子資源的對應關(guān)系,查詢后得出描述信息,將描述信息添加進對a.html的加載請求中,移動終端發(fā)送對a.html的加載請求,代理服務器收到這個加載請求,加載a.html和關(guān)鍵資源a.css以及a.js,根據(jù)描述信息,代理服務器發(fā)回響應,若是未查詢到,則代理服務器發(fā)回a.html,若是查詢到且已超期,則代理服務器發(fā)回a.html和差量數(shù)據(jù),若是查詢到且尚未超期,則代理服務器發(fā)回a.html和關(guān)鍵資源a.css以及a.js,移動終端接收響應,渲染并顯示頁面。
[0119]這里的加載應答是根據(jù)移動終端發(fā)送的描述信息返回的代碼文件與相關(guān)資源。
[0120]比如,移動終端發(fā)送的加載請求中的描述信息為查詢到且尚未超期,加載應答中就包含網(wǎng)頁的代碼文檔。
[0121]若移動終端發(fā)送的加載請求中的描述信息為查詢到且已超期,則加載應答中就包含網(wǎng)頁的代碼文檔和差量數(shù)據(jù),移動終端將差量數(shù)據(jù)與存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源更新,和代碼文件一起進行網(wǎng)頁的渲染顯示。
[0122]若移動終端發(fā)送的加載請求中的描述信息為未查詢到,則加載應答中就包含代碼文檔和網(wǎng)頁的關(guān)鍵資源。
[0123]每一次的網(wǎng)頁加載都可以將移動終端中存儲的資源更新為最新的資源。
[0124]綜上所述,本公開實施例中提供的網(wǎng)頁加載方法,通過向代理服務器發(fā)送加載請求后,接收代理服務器反饋的網(wǎng)頁的代碼文件和關(guān)鍵資源,利用代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,由于代理服務器會在反饋網(wǎng)頁的代碼文件的同時反饋關(guān)鍵資源,因此移動終端可以先利用代碼文件和關(guān)鍵資源進行網(wǎng)頁渲染,節(jié)省了單獨向代理服務器發(fā)送獲取關(guān)鍵資源的獲取請求以及等待代理服務器反饋關(guān)鍵資源的時間,解決了相關(guān)技術(shù)中移動終端獲取網(wǎng)頁代碼文件后,需要等待服務器反饋關(guān)鍵資源導致網(wǎng)頁渲染時間較長的問題;達到了可以縮短網(wǎng)頁渲染的時間的效果。
[0125]另外,通過獲取網(wǎng)頁關(guān)鍵資源的描述信息,將描述信息添加進加載請求中發(fā)送給代理服務器,使得代理服務器收到加載請求的時候,能夠根據(jù)描述信息確定出關(guān)鍵資源的差量數(shù)據(jù),避免了每次加載都需要重新向目標服務器請求完整的資源導致網(wǎng)頁渲染時間延長。
[0126]通過查詢網(wǎng)頁的關(guān)鍵資源,將三種可能的情況記成不同的描述信息,能夠有效的將加載網(wǎng)頁時需要的資源的信息傳遞給代理服務器,使得代理服務器能夠根據(jù)描述信息直接發(fā)送相關(guān)資源,從而節(jié)省網(wǎng)頁渲染的時間。
[0127]通過移動終端接收網(wǎng)頁的加載應答,根據(jù)加載應答反饋回來的代碼文件和資源與原始關(guān)鍵資源更新,用來進行網(wǎng)頁渲染顯示,分情況的進行資源合并更新,能夠使得下一次加載時減少關(guān)鍵資源獲取的時間,從而縮短網(wǎng)頁渲染時間,使得用戶能夠更快看到網(wǎng)頁。
[0128]通過在首次接收客戶端加載網(wǎng)頁的加載請求時,將網(wǎng)頁的代碼文件和關(guān)鍵資源反饋給移動終端,以讓移動終端根據(jù)代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,解決了相關(guān)技術(shù)方案中服務器接收代碼文件的加載請求后發(fā)回一個響應,再接收關(guān)鍵資源的獲取請求后返回響應,而導致移動終端兩次等待響應導致網(wǎng)頁渲染時間延長的問題,提高了網(wǎng)頁加載的效率。。
[0129]通過代理服務器獲取網(wǎng)頁的代碼文件和所有資源,當收到網(wǎng)頁的歷史加載請求時,查詢存儲的該網(wǎng)頁的代碼文件和關(guān)鍵資源即可返回給移動終端對網(wǎng)頁進行渲染顯示;代理服務器向目標服務器獲取的是所有資源,因此不需要等待移動終端發(fā)送關(guān)鍵資源的加載請求才知道需要加載哪些資源;而再次對相同頁面加載時,只返回代碼文件和關(guān)鍵資源,可以縮短資源傳輸?shù)臅r間,讓用戶可以先看到主要的頁面內(nèi)容,從而縮短頁面顯示的時間。
[0130]通過代理服務器接收添加有描述信息的加載請求,獲取存儲的網(wǎng)頁的代碼文件,由描述信息確定需要返回的差量數(shù)據(jù)和關(guān)鍵資源,相對于原始資源,只需要傳輸很少的數(shù)據(jù),縮短了數(shù)據(jù)傳輸?shù)臅r間。
[0131]通過接收添加包括查詢到且已超期的信息和哈希值的加載請求,代理服務器根據(jù)哈希值確定原始關(guān)鍵資源,將原始關(guān)鍵資源與獲取到的關(guān)鍵資源計算得到差值,即可確定需要反饋給移動終端的差量數(shù)據(jù),由于哈希值與每個資源是唯一對應的關(guān)系,因此能夠準備判斷出原始關(guān)鍵資源包括的內(nèi)容,為代理服務器計算差量數(shù)據(jù)提供了依據(jù)。
[0132]下述為本公開裝置實施例,可以用于執(zhí)行本公開方法實施例。對于本公開裝置實施例中未披露的細節(jié),請參照本公開方法實施例。
[0133]圖4是根據(jù)一示例性實施例示出的一種網(wǎng)頁加載裝置的框圖,如圖4所示,該網(wǎng)頁加載裝置主要以應用于圖1所示的移動終端120中進行舉例說明,該網(wǎng)頁加載裝置包括但不限于:確定模塊410、第一發(fā)送模塊420、第一接收模塊430和第一渲染模塊440。
[0134]確定模塊410,被配置為在需要加載網(wǎng)頁時,確定是否存儲有該網(wǎng)頁的關(guān)鍵資源。
[0135]第一發(fā)送模塊420,被配置為在確定模塊410確定出未存儲有該網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送該網(wǎng)頁的第一加載請求,該第一加載請求用于觸發(fā)代理服務器獲取網(wǎng)頁的代碼文件以及網(wǎng)頁的關(guān)鍵資源,向移動終端反饋包括代碼文件和網(wǎng)頁的關(guān)鍵資源的第一加載應答。
[0136]第一接收模塊430,被配置為接收代理服務器反饋的第一加載應答。
[0137]第一渲染模塊440,被配置為利用第一加載應答包括的代碼文件和關(guān)鍵資源,對網(wǎng)頁進行渲染顯示。
[0138]綜上所述,本公開實施例中提供的網(wǎng)頁加載裝置,通過確定模塊確定出是否存儲有該網(wǎng)頁的關(guān)鍵資源,在確定模塊確定出未存儲有該網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送加載請求后,接收代理服務器反饋的網(wǎng)頁的代碼文件和關(guān)鍵資源,利用代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,由于代理服務器會在反饋網(wǎng)頁的代碼文件的同時反饋關(guān)鍵資源,因此移動終端可以先利用代碼文件和關(guān)鍵資源進行網(wǎng)頁渲染,節(jié)省了單獨向代理服務器發(fā)送獲取關(guān)鍵資源的獲取請求以及等待代理服務器反饋關(guān)鍵資源的時間,解決了相關(guān)技術(shù)中移動終端獲取網(wǎng)頁代碼文件后,需要等待服務器反饋關(guān)鍵資源導致網(wǎng)頁渲染時間較長的問題;達到了可以縮短網(wǎng)頁渲染的時間的效果。
[0139]圖5是根據(jù)另一示例性實施例示出的一種網(wǎng)頁加載裝置的框圖,如圖5所示,該網(wǎng)頁加載裝置主要以應用于圖1所示的移動終端120中進行舉例說明,該網(wǎng)頁加載裝置包括但不限于:確定模塊501、第一發(fā)送模塊502、第一接收模塊503和第一渲染模塊504。
[0140]確定模塊501,被配置為在需要加載網(wǎng)頁時,確定是否存儲有該網(wǎng)頁的關(guān)鍵資源。
[0141]這里所講的關(guān)鍵資源一般是指網(wǎng)頁在渲染時能代表網(wǎng)頁整體內(nèi)容的資源,也即,當網(wǎng)頁中的關(guān)鍵資源被渲染顯示后,用戶即可得知該網(wǎng)頁的整體內(nèi)容。
[0142]網(wǎng)頁中除了包含關(guān)鍵資源以外,還可以包含非關(guān)鍵資源,這些非關(guān)鍵資源并不能很大程度上影響網(wǎng)頁的內(nèi)容顯示,通常在進行網(wǎng)頁渲染后,會先根據(jù)關(guān)鍵資源進行渲染,讓用戶盡可能快的得知網(wǎng)頁的內(nèi)容,然后再獲取非關(guān)鍵資源,根據(jù)非關(guān)鍵資源進行網(wǎng)頁內(nèi)容的渲染,以讓用戶得知網(wǎng)頁的全部內(nèi)容。
[0143]第一發(fā)送模塊502,被配置為在確定模塊501確定出未存儲有該網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送該網(wǎng)頁的第一加載請求,該第一加載請求用于觸發(fā)代理服務器獲取網(wǎng)頁的代碼文件以及網(wǎng)頁的關(guān)鍵資源,向移動終端反饋包括代碼文件和網(wǎng)頁的關(guān)鍵資源的第一加載應答。
[0144]當移動終端在未存儲有該網(wǎng)頁的關(guān)鍵資源時,意味著移動終端必須從服務器獲取該網(wǎng)頁的關(guān)鍵資源,因此此時根據(jù)移動終端與代理服務器之間的傳輸協(xié)議,向代理服務器發(fā)送該網(wǎng)頁的加載請求。
[0145]第一接收模塊503,被配置為接收代理服務器反饋的第一加載應答。
[0146]第一渲染模塊504,被配置為利用第一加載應答包括的代碼文件和關(guān)鍵資源,對網(wǎng)頁進行渲染顯示。
[0147]移動終端在接收到網(wǎng)頁的代碼文件和關(guān)鍵資源之后,可以對網(wǎng)頁的代碼進行解析,解析確定出的關(guān)鍵資源的描述信息,利用關(guān)鍵資源的描述信息以及關(guān)鍵資源進行網(wǎng)頁內(nèi)容的渲染顯示,這樣,移動終端則可以顯示出網(wǎng)頁的關(guān)鍵資源。
[0148]可選的,該裝置還可以包括:獲取模塊505。
[0149]獲取模塊505,被配置為在確定模塊501確定出存儲有該網(wǎng)頁的關(guān)鍵資源時,獲取該網(wǎng)頁的關(guān)鍵資源的描述信息。
[0150]移動終端在存儲有該網(wǎng)頁的關(guān)鍵資源時,表明該移動終端最近加載過該網(wǎng)頁,此時該網(wǎng)頁的有些關(guān)鍵資源可能是可以直接使用的,此時則可以避免有效資源的流量占用。
[0151]可選的,獲取模塊505可以包括:查詢子模塊505a、第一標記子模塊505b、第二標記子模塊505c和第三標記子模塊505d。
[0152]查詢子模塊505a,被配置為查詢該網(wǎng)頁的每個關(guān)鍵資源。
[0153]—般來講,移動終端在加載過某個網(wǎng)頁后,可以將該網(wǎng)頁的網(wǎng)頁地址以及該網(wǎng)頁所涉及的關(guān)鍵資源進行對應緩存,因此移動終端在需要加載某個網(wǎng)頁地址時,則可以根據(jù)該網(wǎng)頁地址進行索引,以查找到換成的該網(wǎng)頁所對應的關(guān)鍵資源。
[0154]第一標記子模塊505b,被配置為對于查詢子模塊505a查詢到的該網(wǎng)頁的關(guān)鍵資源,將查詢子模塊505a查詢到的且超期的該網(wǎng)頁的第一類關(guān)鍵資源的描述信息記為查詢到且已超期,計算第一類關(guān)鍵資源的哈希值,將哈希值添加至第一類關(guān)鍵資源的描述信息中。
[0155]當關(guān)鍵資源超期時,通常表明該關(guān)鍵資源可能被更改過,因此需要更新該關(guān)鍵資源,但考慮到超期的關(guān)鍵資源的更改可能會與超期的關(guān)鍵資源存儲一定的相似性,為了減少下載整個關(guān)鍵資源所占用的流量,因此可以下載這類關(guān)鍵資源的差量數(shù)據(jù),而下載這些關(guān)鍵資源的差量數(shù)據(jù)的前提是需要告知代理服務器該過期的關(guān)鍵資源是哪個版本的,以便于代理服務器根據(jù)查找到的版本以及最新的版本確定差量數(shù)據(jù)。而關(guān)鍵資源一般不會存儲版本號,因此本實施例中采用關(guān)鍵資源的哈希值。
[0156]這里所講的哈希值是與每一個資源唯一對應的二進制值,用于區(qū)分不同的資源。不同的資源具備不同的二進制數(shù)值,可以利用這些二進制數(shù)值計算唯一與二進制數(shù)值對應的哈希值,這樣哈希值則唯一對應一個資源,或一個版本的資源。
[0157]為了能夠讓代理服務器反饋該過期關(guān)鍵資源與對應的最新的關(guān)鍵資源之間的差量數(shù)據(jù),移動終端需要將該類關(guān)鍵資源的哈希值作為其描述信息的一部分,以通知給代理服務器。
[0158]第二標記子模塊505c,被配置為將查詢子模塊505a查詢到的且尚未超期的該網(wǎng)頁的第二類關(guān)鍵資源的描述信息記為查詢到且尚未超期。
[0159]移動終端可以直接使用本地的這些尚未超期的關(guān)鍵資源,但仍需要告知代理服務器,以避免代理服務器重復下發(fā)這類尚未超期的第二類關(guān)鍵資源。
[0160]第三標記子模塊505d,被配置為將查詢子模塊505a未查詢到的該網(wǎng)頁的第三類關(guān)鍵資源的描述信息記為未查詢到。
[0161]可選的,該裝置還可以包括:第二發(fā)送模塊506、第二接收模塊507、第二渲染模塊508、第三渲染模塊509和第四渲染模塊510。
[0162]第二發(fā)送模塊506,被配置為向代理服務器發(fā)送添加有描述信息的第二加載請求,該第二加載請求用于觸發(fā)代理服務器獲取存儲的與該網(wǎng)頁對應的代碼文件,根據(jù)描述信息確定出該網(wǎng)頁的關(guān)鍵資源的差量數(shù)據(jù),向移動終端反饋添加有差量數(shù)據(jù)以及代碼文件的第二加載應答,該差量數(shù)據(jù)用于反映在移動終端存儲的關(guān)鍵資源與代理服務器存儲的同一個關(guān)鍵資源之間的差值。
[0163]第二接收模塊507,被配置為接收代理服務器反饋的第二加載應答。
[0164]第二渲染模塊508,被配置為當?shù)诙虞d應答中僅包含代碼文件時,利用代碼文件以及本地存儲的網(wǎng)頁的關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0165]第三渲染模塊509,被配置為當?shù)诙虞d應答中僅包括代碼文件和差量數(shù)據(jù)時,根據(jù)差量數(shù)據(jù)以及存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源,將原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)應用關(guān)鍵資源、代碼文件以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0166]第四渲染模塊510,被配置為當?shù)诙虞d應答中包括代碼文件、差量數(shù)據(jù)和關(guān)鍵資源時,根據(jù)差量數(shù)據(jù)以及存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源,將原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)應用關(guān)鍵資源、代碼文件、第二加載應答中包括的關(guān)鍵資源以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0167]當?shù)诙虞d應答中僅包含代碼文件時,表明該網(wǎng)頁的關(guān)鍵資源均存儲在移動終端本地且均未過期,此時,移動終端則可以直接利用代碼文件以及本地存儲的網(wǎng)頁的關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0168]當?shù)诙虞d應答中僅包括代碼文件和差量數(shù)據(jù)時,表明該網(wǎng)頁的關(guān)鍵資源除了差量數(shù)據(jù)對應的關(guān)鍵資源過期外,該網(wǎng)頁的其他關(guān)鍵資源均在本地存儲且未過期,此時,移動終端則可以根據(jù)差量數(shù)據(jù)以及存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源,將原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)應用關(guān)鍵資源、代碼文件以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0169]當?shù)诙虞d應答中包括代碼文件、差量數(shù)據(jù)和關(guān)鍵資源時,表明該網(wǎng)頁的關(guān)鍵資源除了差量數(shù)據(jù)對應的關(guān)鍵資源過期且未存儲第二加載應答中包括的關(guān)鍵資源外,該網(wǎng)頁的其他關(guān)鍵資源均在本地存儲且未過期,此時,移動終端則可以根據(jù)差量數(shù)據(jù)以及存儲的與差量數(shù)據(jù)對應的原始關(guān)鍵資源,將原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)應用關(guān)鍵資源、代碼文件、第二加載應答中包括的關(guān)鍵資源以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯不網(wǎng)頁O
[0170]綜上所述,本公開實施例中提供的網(wǎng)頁加載裝置,通過確定模塊確定出是否存儲有該網(wǎng)頁的關(guān)鍵資源,在確定模塊確定出未存儲有該網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送加載請求后,接收代理服務器反饋的網(wǎng)頁的代碼文件和關(guān)鍵資源,利用代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,由于代理服務器會在反饋網(wǎng)頁的代碼文件的同時反饋關(guān)鍵資源,因此移動終端可以先利用代碼文件和關(guān)鍵資源進行網(wǎng)頁渲染,節(jié)省了單獨向代理服務器發(fā)送獲取關(guān)鍵資源的獲取請求以及等待代理服務器反饋關(guān)鍵資源的時間,解決了相關(guān)技術(shù)中移動終端獲取網(wǎng)頁代碼文件后,需要等待服務器反饋關(guān)鍵資源導致網(wǎng)頁渲染時間較長的問題;達到了可以縮短網(wǎng)頁渲染的時間的效果。
[0171]另外,通過移動終端獲取網(wǎng)頁關(guān)鍵資源的描述信息,將描述信息添加進加載請求中發(fā)送給代理服務器,使得代理服務器收到加載請求的時候,能夠根據(jù)描述信息確定出關(guān)鍵資源的差量數(shù)據(jù),避免了每次加載都需要重新向目標服務器請求完整的資源導致網(wǎng)頁渲染時間延長。
[0172]通過查詢網(wǎng)頁的關(guān)鍵資源,將三種可能的情況記成不同的描述信息,能夠有效的將加載網(wǎng)頁時需要的資源的信息傳遞給代理服務器,使得代理服務器能夠根據(jù)描述信息直接發(fā)送相關(guān)資源,從而節(jié)省網(wǎng)頁渲染的時間。
[0173]通過移動終端接收網(wǎng)頁的加載應答,根據(jù)加載應答反饋回來的代碼文件和資源與原始關(guān)鍵資源更新,用來進行網(wǎng)頁渲染顯示,分情況的進行資源合并更新,能夠使得下一次加載時減少關(guān)鍵資源獲取的時間,從而縮短網(wǎng)頁渲染時間,使得用戶能夠更快看到網(wǎng)頁。
[0174]圖6是根據(jù)再一示例性實施例示出的一種網(wǎng)頁加載裝置的框圖,如圖6所示,該網(wǎng)頁加載裝置主要以應用于圖1所示的代理服務器110中進行舉例說明,該網(wǎng)頁加載裝置包括但不限于:第一接收模塊610、第一獲取模塊620和第一反饋模塊630。
[0175]第一接收模塊610,被配置為接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,該第一加載請求是移動終端首次加載網(wǎng)頁時發(fā)送的加載請求。
[0176]第一獲取模塊620,被配置為獲取網(wǎng)頁的代碼文件以及網(wǎng)頁的關(guān)鍵資源。
[0177]第一反饋模塊630,被配置為向移動終端反饋包括代碼文件和網(wǎng)頁的關(guān)鍵資源的第一加載應答,該第一加載應答用于觸發(fā)移動終端利用代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示。
[0178]綜上所述,本公開實施例中提供的網(wǎng)頁加載裝置,通過第一接收模塊在首次接收客戶端加載網(wǎng)頁的加載請求時,將網(wǎng)頁的代碼文件和關(guān)鍵資源反饋給移動終端,以讓移動終端根據(jù)代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,解決了相關(guān)技術(shù)方案中服務器接收代碼文件的加載請求后發(fā)回一個響應,再接收關(guān)鍵資源的獲取請求后返回響應,而導致移動終端兩次等待響應導致網(wǎng)頁渲染時間延長的問題,提高了網(wǎng)頁加載的效率。
[0179]圖7是根據(jù)再一示例性實施例示出的一種網(wǎng)頁加載裝置的框圖,如圖7所示,該網(wǎng)頁加載裝置主要以應用于圖1所示的代理服務器110中進行舉例說明,該網(wǎng)頁加載裝置包括但不限于:第一接收模塊701、第一獲取模塊702和第一反饋模塊703。
[0180]第一接收模塊701,被配置為接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,該第一加載請求是移動終端首次加載網(wǎng)頁時發(fā)送的加載請求。
[0181]第一獲取模塊702,被配置為獲取網(wǎng)頁的代碼文件以及網(wǎng)頁的關(guān)鍵資源。
[0182]這里所講的代碼文件一般是指網(wǎng)頁的主文檔。代碼文件與關(guān)鍵資源可以用于網(wǎng)頁的渲染顯示,代碼文件可以定義網(wǎng)頁上的圖片、文字、鏈接等資源分別位于網(wǎng)頁的哪個位置,以什么樣的形式展示等,可見,代碼文件限定了網(wǎng)頁中各個元素的布局和顯示形式等。
[0183]第一反饋模塊703,被配置為向移動終端反饋包括代碼文件和網(wǎng)頁的關(guān)鍵資源的第一加載應答,該第一加載應答用于觸發(fā)移動終端利用代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示。
[0184]為了減少移動終端對關(guān)鍵資源的等待時長,這里選擇將網(wǎng)頁的代碼文件和關(guān)鍵資源一同發(fā)送至移動終端,也即將網(wǎng)頁的代碼文件和關(guān)鍵資源添加至第一加載應答中。很顯然,這里的加載應答的傳輸也是利用移動終端與代理服務器之間預先協(xié)商的傳輸協(xié)議。
[0185]可選的,第一獲取模塊702可以包括:第一獲取子模塊702a和查詢子模塊702b。
[0186]第一獲取子模塊702a,被配置為在代理服務器未接收過網(wǎng)頁的歷史加載請求時,從網(wǎng)頁的目標服務器獲取網(wǎng)頁的代碼文件以及網(wǎng)頁的所有資源,提取出網(wǎng)頁的關(guān)鍵資源。
[0187]代理服務器未接收過該網(wǎng)頁的歷史加載請求,表明沒有任何一個移動終端曾經(jīng)向該代理服務器發(fā)送過該網(wǎng)頁的加載請求,而代理服務器所存儲的網(wǎng)頁打代碼文件和資源均是在第一個移動終端的加載請求后的觸發(fā)下,從該網(wǎng)頁的目標服務器獲取的,因此代理服務器需要從該網(wǎng)頁的目標服務器獲取該網(wǎng)頁的代碼文件以及該網(wǎng)頁的所有資源。
[0188]查詢子模塊702b,被配置為在代理服務器接收過網(wǎng)頁的歷史加載請求時,查詢存儲的網(wǎng)頁的代碼文件以及網(wǎng)頁的關(guān)鍵資源。
[0189]可選的,該網(wǎng)頁加載裝置,還包括:第二接收模塊704、第二獲取模塊705、確定模塊706和第二反饋模塊707。
[0190]第二接收模塊704,被配置為接收移動終端發(fā)送的網(wǎng)頁的第二加載請求,該第二加載請求包括網(wǎng)頁的關(guān)鍵資源的描述信息。
[0191]第二獲取模塊705,被配置為獲取存儲的與網(wǎng)頁對應的代碼文件。
[0192]一般來講,一旦移動終端與代理服務器架構(gòu)完成之后,移動終端均經(jīng)過代理服務器訪問網(wǎng)頁地址,因此當移動終端能夠查詢到本地存儲的網(wǎng)頁的資源時,表明該移動終端訪問過網(wǎng)頁地址,此時也可以認為該移動終端通過代理服務器訪問過該網(wǎng)頁地址,因此代理服務器會存儲有該網(wǎng)頁的代碼文件以及所有資源。
[0193]也因此,在代理服務器接收過該網(wǎng)頁的歷史加載請求時,代理服務器可以獲取本地存儲的與該網(wǎng)頁對應的代碼文件。
[0194]確定模塊706,被配置為根據(jù)描述信息確定出需要向移動終端反饋的差量數(shù)據(jù)以及關(guān)鍵資源,差量數(shù)據(jù)用于反映在移動終端存儲的關(guān)鍵資源與代理服務器存儲的同一個關(guān)鍵資源之間的差值。
[0195]第二反饋模塊707,被配置為向移動終端反饋添加有確定出的差量數(shù)據(jù)、關(guān)鍵資源以及代碼文件的第二加載應答,該第二加載應答用于觸發(fā)移動終端根據(jù)差量數(shù)據(jù)計算代理服務器存儲的與得到差量數(shù)據(jù)的關(guān)鍵資源,根據(jù)計算出的關(guān)鍵資源、第二加載應答中的代碼文件以及本地存儲的網(wǎng)頁的其他關(guān)鍵資源,渲染顯示網(wǎng)頁。
[0196]當代理服務器確定出差量數(shù)據(jù)后,可以將差量數(shù)據(jù)添加至第二加載應答中,當代理服務器確定出移動終端尚未存儲的該網(wǎng)頁的關(guān)鍵資源,則可以將這些關(guān)鍵資源添加至第二加載應答中,此外,代理服務器應第二加載請求,還會將該網(wǎng)頁的代碼文件添加至第二加載應答中。
[0197]可選的,確定模塊706可以包括:確定子模塊706a和第二獲取子模塊706b。
[0198]確定子模塊706a,被配置為當一個關(guān)鍵資源的描述信息包括用于指示查詢到且已超期的信息以及哈希值,則根據(jù)哈希值確定具備哈希值的原始關(guān)鍵資源。
[0199]一般來講,代理服務器可以存儲資源的各個歷史關(guān)鍵資源,這樣根據(jù)各個歷史關(guān)鍵資源的哈希值,就可以匹配出接收的描述信息中的哈希值所對應的歷史關(guān)鍵資源。
[0200]第二獲取子模塊706b,被配置為獲取存儲的與原始關(guān)鍵資源為同一個資源的應用關(guān)鍵資源,計算原始關(guān)鍵資源和應用關(guān)鍵資源之間的差值,得到與原始關(guān)鍵資源對應的差量數(shù)據(jù),差量數(shù)據(jù)用于觸發(fā)移動終端將原始關(guān)鍵資源更新為應用關(guān)鍵資源。
[0201]這里所講的應用關(guān)鍵資源即至代理服務器中存儲的與該原始關(guān)鍵資源為同一個資源的最新的關(guān)鍵資源。
[0202]綜上所述,本公開實施例中提供的網(wǎng)頁加載裝置,通過第一接收模塊在首次接收客戶端加載網(wǎng)頁的加載請求時,將網(wǎng)頁的代碼文件和關(guān)鍵資源反饋給移動終端,以讓移動終端根據(jù)代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示,解決了相關(guān)技術(shù)方案中服務器接收代碼文件的加載請求后發(fā)回一個響應,再接收關(guān)鍵資源的獲取請求后返回響應,而導致移動終端兩次等待響應導致網(wǎng)頁渲染時間延長的問題,提高了網(wǎng)頁加載的效率。
[0203]另外,通過代理服務器獲取網(wǎng)頁的代碼文件和所有資源,當收到網(wǎng)頁的歷史加載請求時,查詢存儲的該網(wǎng)頁的代碼文件和關(guān)鍵資源即可返回給移動終端對網(wǎng)頁進行渲染顯示;代理服務器向目標服務器獲取的是所有資源,因此不需要等待移動終端發(fā)送關(guān)鍵資源的加載請求才知道需要加載哪些資源;而再次對相同頁面加載時,只返回代碼文件和關(guān)鍵資源,可以縮短資源傳輸?shù)臅r間,讓用戶可以先看到主要的頁面內(nèi)容,從而縮短頁面顯示的時間。
[0204]通過代理服務器接收添加有描述信息的加載請求,獲取存儲的網(wǎng)頁的代碼文件,由描述信息確定需要返回的差量數(shù)據(jù)和關(guān)鍵資源,相對于原始資源,只需要傳輸很少的數(shù)據(jù),縮短了數(shù)據(jù)傳輸?shù)臅r間。
[0205]通過接收添加包括查詢到且已超期的信息和哈希值的加載請求,代理服務器根據(jù)哈希值確定原始關(guān)鍵資源,將原始關(guān)鍵資源與獲取到的關(guān)鍵資源計算得到差值,即可確定需要反饋給移動終端的差量數(shù)據(jù),由于哈希值與每個資源是唯一對應的關(guān)系,因此能夠準備判斷出原始關(guān)鍵資源包括的內(nèi)容,為代理服務器計算差量數(shù)據(jù)提供了依據(jù)。
[0206]關(guān)于上述實施例中的裝置,其中各個模塊執(zhí)行操作的具體方式已經(jīng)在有關(guān)該方法的實施例中進行了詳細描述,此處將不做詳細闡述說明。
[0207]本公開一示例性實施例提供了一種網(wǎng)頁加載裝置,能夠?qū)崿F(xiàn)本公開移動終端提供的網(wǎng)頁加載方法,該網(wǎng)頁加載裝置包括:處理器、用于存儲處理器可執(zhí)行指令的存儲器;
[0208]其中,處理器被配置為:
[0209]在需要加載網(wǎng)頁時,確定是否存儲有該網(wǎng)頁的關(guān)鍵資源。
[0210]在未存儲有該網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送該網(wǎng)頁的第一加載請求,該第一加載請求用于觸發(fā)代理服務器獲取網(wǎng)頁的代碼文件以及網(wǎng)頁的關(guān)鍵資源,向移動終端反饋包括代碼文件和網(wǎng)頁的關(guān)鍵資源的第一加載應答。
[0211]接收代理服務器反饋的第一加載應答。
[0212]利用第一加載應答包括的代碼文件和關(guān)鍵資源,對網(wǎng)頁進行渲染顯示。
[0213]本公開一示例性實施例提供了一種網(wǎng)頁加載裝置,能夠?qū)崿F(xiàn)本公開提供代理服務器提供的網(wǎng)頁加載方法,該網(wǎng)頁加載裝置包括:處理器、用于存儲處理器可執(zhí)行指令的存儲器;
[0214]其中,處理器被配置為:
[0215]接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,該第一加載請求是移動終端首次加載該網(wǎng)頁時發(fā)送的加載請求。
[0216]獲取網(wǎng)頁的代碼文件以及網(wǎng)頁的關(guān)鍵資源。
[0217]向移動終端反饋包括代碼文件和網(wǎng)頁的關(guān)鍵資源的第一加載應答,該第一加載應答用于觸發(fā)移動終端利用代碼文件和關(guān)鍵資源對網(wǎng)頁進行渲染顯示。
[0218]圖8是根據(jù)一示例性實施例示出的一種用于網(wǎng)頁加載的裝置的框圖。例如,裝置800可以是具有網(wǎng)絡(luò)瀏覽功能的設(shè)備,這里所講的設(shè)備可以包括智能電話,計算機,數(shù)字廣播終端,消息收發(fā)設(shè)備,游戲控制臺,平板設(shè)備,醫(yī)療設(shè)備,健身設(shè)備,個人數(shù)字助理等。
[0219]參照圖8,裝置800可以包括以下一個或多個組件:處理組件802,存儲器804,電源組件806,多媒體組件808,音頻組件810,輸入/輸出(I/O)接口 812,傳感器組件814,以及通信組件816。
[0220]處理組件802通??刂蒲b置800的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機操作和記錄操作相關(guān)聯(lián)的操作。處理組件802可以包括一個或多個處理器818來執(zhí)行指令,以完成上述的方法的全部或部分步驟。此外,處理組件802可以包括一個或多個模塊,便于處理組件802和其他組件之間的交互。例如,處理組件802可以包括多媒體模塊,以方便多媒體組件808和處理組件802之間的交互。
[0221]存儲器804被配置為存儲各種類型的數(shù)據(jù)以支持在裝置800的操作。這些數(shù)據(jù)的示例包括用于在裝置800上操作的任何應用程序或方法的指令,聯(lián)系人數(shù)據(jù),電話簿數(shù)據(jù),消息,圖片,視頻等。存儲器804可以由任何類型的易失性或非易失性存儲設(shè)備或者它們的組合實現(xiàn),如靜態(tài)隨機存取存儲器(SRAM),電可擦除可編程只讀存儲器(EEPROM),可擦除可編程只讀存儲器(EPROM),可編程只讀存儲器(PROM),只讀存儲器(ROM),磁存儲器,快閃存儲器,磁盤或光盤。
[0222]電源組件806為裝置800的各種組件提供電力。電源組件806可以包括電源管理系統(tǒng),一個或多個電源,及其他與為裝置800生成、管理和分配電力相關(guān)聯(lián)的組件。
[0223]多媒體組件808包括在裝置800和用戶之間的提供一個輸出接口的屏幕。在一些實施例中,屏幕可以包括液晶顯示器(LCD)和觸摸面板(TP)。如果屏幕包括觸摸面板,屏幕可以被實現(xiàn)為觸摸屏,以接收來自用戶的輸入信號。觸摸面板包括一個或多個觸摸傳感器以感測觸摸、滑動和觸摸面板上的手勢。觸摸傳感器可以不僅感測觸摸或滑動動作的邊界,而且還檢測與觸摸或滑動操作相關(guān)的持續(xù)時間和壓力。在一些實施例中,多媒體組件808包括一個前置攝像頭和/或后置攝像頭。當裝置800處于操作模式,如拍攝模式或視頻模式時,前置攝像頭和/或后置攝像頭可以接收外部的多媒體數(shù)據(jù)。每個前置攝像頭和后置攝像頭可以是一個固定的光學透鏡系統(tǒng)或具有焦距和光學變焦能力。
[0224]音頻組件810被配置為輸出和/或輸入音頻信號。例如,音頻組件810包括一個麥克風(MIC),當裝置800處于操作模式,如呼叫模式、記錄模式和語音識別模式時,麥克風被配置為接收外部音頻信號。所接收的音頻信號可以被進一步存儲在存儲器804或經(jīng)由通信組件816發(fā)送。在一些實施例中,音頻組件810還包括一個揚聲器,用于輸出音頻信號。
[0225]I/O接口812為處理組件802和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤,點擊輪,按鈕等。這些按鈕可包括但不限于:主頁按鈕、音量按鈕、啟動按鈕和鎖定按鈕。
[0226]傳感器組件814包括一個或多個傳感器,用于為裝置800提供各個方面的狀態(tài)評估。例如,傳感器組件814可以檢測到裝置800的打開/關(guān)閉狀態(tài),組件的相對定位,例如組件為裝置800的顯示器和小鍵盤,傳感器組件814還可以檢測裝置800或裝置800—個組件的位置改變,用戶與裝置800接觸的存在或不存在,裝置800方位或加速/減速和裝置800的溫度變化。傳感器組件814可以包括接近傳感器,被配置用來在沒有任何的物理接觸時檢測附近物體的存在。傳感器組件814還可以包括光傳感器,如CMOS或CCD圖像傳感器,用于在成像應用中使用。在一些實施例中,該傳感器組件814還可以包括加速度傳感器,陀螺儀傳感器,磁傳感器,壓力傳感器或溫度傳感器。
[0227]通信組件816被配置為便于裝置800和其他設(shè)備之間有線或無線方式的通信。裝置800可以接入基于通信標準的無線網(wǎng)絡(luò),如W1-Fi,2G或3G,或它們的組合。在一個示例性實施例中,通信組件816經(jīng)由廣播信道接收來自外部廣播管理系統(tǒng)的廣播信號或廣播相關(guān)信息。在一個示例性實施例中,通信組件816還包括近場通信(NFC)模塊,以促進短程通信。例如,在NFC模塊可基于射頻識別(RFID)技術(shù),紅外數(shù)據(jù)協(xié)會(IrDA)技術(shù),超寬帶(UWB)技術(shù),藍牙(BT)技術(shù)和其他技術(shù)來實現(xiàn)。
[0228]在示例性實施例中,裝置800可以被一個或多個應用專用集成電路(ASIC)、數(shù)字信號處理器(DSP)、數(shù)字信號處理設(shè)備(DSPD)、可編程邏輯器件(PLD)、現(xiàn)場可編程門陣列(FPGA)、控制器、微控制器、微處理器或其他電子元件實現(xiàn),用于執(zhí)行上述網(wǎng)頁加載方法。
[0229]在示例性實施例中,還提供了一種包括指令的非臨時性計算機可讀存儲介質(zhì),例如包括指令的存儲器804,上述指令可由裝置800的處理器818執(zhí)行以完成上述網(wǎng)頁加載方法。例如,非臨時性計算機可讀存儲介質(zhì)可以是R0M、隨機存取存儲器(RAM)、⑶-R0M、磁帶、軟盤和光數(shù)據(jù)存儲設(shè)備等。
[0230]圖9是根據(jù)另一示例性實施例示出的一種用于網(wǎng)頁加載裝置的框圖。例如,裝置900可以被提供為一網(wǎng)絡(luò)側(cè)設(shè)備。參照圖9,裝置900包括處理組件902,其進一步包括一個或多個處理器,以及由存儲器904所代表的存儲器資源,用于存儲可由處理組件902的執(zhí)行的指令,例如應用程序。存儲器904中存儲的應用程序可以包括一個或一個以上的每一個對應于一組指令的模塊。此外,處理組件902被配置為執(zhí)行指令,以執(zhí)行上述網(wǎng)頁加載方法。
[0231]裝置900還可以包括一個電源組件906被配置為執(zhí)行裝置900的電源管理,一個有線或無線網(wǎng)絡(luò)接口 909被配置為將裝置900連接到網(wǎng)絡(luò),和一個輸入輸出(I/O)接口 910。裝置900可以操作基于存儲在存儲器904的操作系統(tǒng),例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,F(xiàn)reeBSDTM 或類似。
[0232]本領(lǐng)域技術(shù)人員在考慮說明書及實踐這里公開的發(fā)明后,將容易想到本公開的其它實施方案。本申請旨在涵蓋本公開的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本公開的一般性原理并包括本公開未公開的本技術(shù)領(lǐng)域中的公知常識或慣用技術(shù)手段。說明書和實施例僅被視為示例性的,本公開的真正范圍和精神由下面的權(quán)利要求指出。
[0233]應當理解的是,本公開并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進行各種修改和改變。本公開的范圍僅由所附的權(quán)利要求來限制。
【主權(quán)項】
1.一種網(wǎng)頁加載方法,其特征在于,應用于移動終端中,所述方法包括: 在需要加載網(wǎng)頁時,確定是否存儲有所述網(wǎng)頁的關(guān)鍵資源; 在未存儲有所述網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送所述網(wǎng)頁的第一加載請求,所述第一加載請求用于觸發(fā)所述代理服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源,向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答; 接收所述代理服務器反饋的所述第一加載應答; 利用所述第一加載應答包括的所述代碼文件和所述關(guān)鍵資源,對所述網(wǎng)頁進行渲染顯不O2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 在存儲有所述網(wǎng)頁的關(guān)鍵資源時,獲取所述網(wǎng)頁的關(guān)鍵資源的描述信息; 向所述代理服務器發(fā)送添加有所述描述信息的第二加載請求,所述第二加載請求用于觸發(fā)所述代理服務器獲取存儲的與所述網(wǎng)頁對應的代碼文件,根據(jù)描述信息確定出所述網(wǎng)頁的關(guān)鍵資源的差量數(shù)據(jù),向所述移動終端反饋添加有所述差量數(shù)據(jù)以及所述代碼文件的第二加載應答,所述差量數(shù)據(jù)用于反映在所述移動終端存儲的關(guān)鍵資源與所述代理服務器存儲的同一個關(guān)鍵資源之間的差值。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述獲取所述網(wǎng)頁的關(guān)鍵資源的描述信息,包括: 查詢所述網(wǎng)頁的每個關(guān)鍵資源; 對于查詢到所述網(wǎng)頁的關(guān)鍵資源,將查詢到的且超期的所述網(wǎng)頁的第一類關(guān)鍵資源的描述信息記為查詢到且已超期,計算所述第一類關(guān)鍵資源的哈希值,將所述哈希值添加至所述第一類關(guān)鍵資源的描述信息中; 將查詢到的且尚未超期的所述網(wǎng)頁的第二類關(guān)鍵資源的描述信息記為查詢到且尚未超期; 將未查詢到的所述網(wǎng)頁的第三類關(guān)鍵資源的描述信息記為未查詢到。4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法還包括: 接收所述代理服務器反饋的所述第二加載應答; 當所述第二加載應答中僅包含代碼文件時,利用所述代碼文件以及本地存儲的所述網(wǎng)頁的關(guān)鍵資源,渲染顯示所述網(wǎng)頁; 當所述第二加載應答中僅包括代碼文件和差量數(shù)據(jù)時,根據(jù)所述差量數(shù)據(jù)以及存儲的與所述差量數(shù)據(jù)對應的原始關(guān)鍵資源,將所述原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)所述應用關(guān)鍵資源、所述代碼文件以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁; 當所述第二加載應答中包括代碼文件、差量數(shù)據(jù)和關(guān)鍵資源時,根據(jù)所述差量數(shù)據(jù)以及存儲的與所述差量數(shù)據(jù)對應的原始關(guān)鍵資源,將所述原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)所述應用關(guān)鍵資源、所述代碼文件、所述第二加載應答中包括的關(guān)鍵資源以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁。5.—種網(wǎng)頁加載方法,其特征在于,應用于代理服務器中,所述方法包括: 接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,所述第一加載請求是所述移動終端首次加載所述網(wǎng)頁時發(fā)送的加載請求; 獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源; 向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答,所述第一加載應答用于觸發(fā)所述移動終端利用所述代碼文件和所述關(guān)鍵資源對所述網(wǎng)頁進行渲染顯示。6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源,包括: 在所述代理服務器未接收過所述網(wǎng)頁的歷史加載請求時,從所述網(wǎng)頁的目標服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的所有資源,提取出所述網(wǎng)頁的關(guān)鍵資源; 在所述代理服務器接收過所述網(wǎng)頁的歷史加載請求時,查詢存儲的所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源。7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述方法還包括: 接收所述移動終端發(fā)送的網(wǎng)頁的第二加載請求,所述第二加載請求包括所述網(wǎng)頁的關(guān)鍵資源的描述信息; 獲取存儲的與所述網(wǎng)頁對應的代碼文件; 根據(jù)所述描述信息確定出需要向所述移動終端反饋的差量數(shù)據(jù)以及關(guān)鍵資源,所述差量數(shù)據(jù)用于反映在所述移動終端存儲的關(guān)鍵資源與所述代理服務器存儲的同一個關(guān)鍵資源之間的差值; 向所述移動終端反饋添加有所述確定出的差量數(shù)據(jù)、關(guān)鍵資源以及所述代碼文件的第二加載應答,所述第二加載應答用于觸發(fā)所述移動終端根據(jù)所述差量數(shù)據(jù)計算所述代理服務器存儲的與得到所述差量數(shù)據(jù)的關(guān)鍵資源,根據(jù)所述計算出的關(guān)鍵資源、所述第二加載應答中的代碼文件以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁。8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述根據(jù)所述描述信息確定出需要向所述移動終端反饋的差量數(shù)據(jù),包括: 當一個關(guān)鍵資源的描述信息包括用于指示查詢到且已超期的信息以及哈希值,則根據(jù)所述哈希值確定具備所述哈希值的原始關(guān)鍵資源; 獲取存儲的與所述原始關(guān)鍵資源為同一個資源的應用關(guān)鍵資源,計算所述原始關(guān)鍵資源和所述應用關(guān)鍵資源之間的差值,得到與所述原始關(guān)鍵資源對應的差量數(shù)據(jù),所述差量數(shù)據(jù)用于觸發(fā)所述移動終端將所述原始關(guān)鍵資源更新為所述應用關(guān)鍵資源。9.一種網(wǎng)頁加載裝置,其特征在于,應用于移動終端中,所述裝置包括: 確定模塊,被配置為在需要加載網(wǎng)頁時,確定是否存儲有所述網(wǎng)頁的關(guān)鍵資源; 第一發(fā)送模塊,被配置為在所述確定模塊確定出未存儲有所述網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送所述網(wǎng)頁的第一加載請求,所述第一加載請求用于觸發(fā)所述代理服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源,向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答; 第一接收模塊,被配置為接收所述代理服務器反饋的所述第一加載應答; 第一渲染模塊,被配置為利用所述第一加載應答包括的所述代碼文件和所述關(guān)鍵資源,對所述網(wǎng)頁進行渲染顯示。10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括: 獲取模塊,被配置為在所述確定模塊確定出存儲有所述網(wǎng)頁的關(guān)鍵資源時,獲取所述網(wǎng)頁的關(guān)鍵資源的描述信息; 第二發(fā)送模塊,被配置為向所述代理服務器發(fā)送添加有所述描述信息的第二加載請求,所述第二加載請求用于觸發(fā)所述代理服務器獲取存儲的與所述網(wǎng)頁對應的代碼文件,根據(jù)描述信息確定出所述網(wǎng)頁的關(guān)鍵資源的差量數(shù)據(jù),向所述移動終端反饋添加有所述差量數(shù)據(jù)以及所述代碼文件的第二加載應答,所述差量數(shù)據(jù)用于反映在所述移動終端存儲的關(guān)鍵資源與所述代理服務器存儲的同一個關(guān)鍵資源之間的差值。11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述獲取模塊,包括: 查詢子模塊,被配置為查詢所述網(wǎng)頁的每個關(guān)鍵資源; 第一標記子模塊,被配置為對于所述查詢子模塊查詢到的所述網(wǎng)頁的關(guān)鍵資源,將所述查詢子模塊查詢到的且超期的所述網(wǎng)頁的第一類關(guān)鍵資源的描述信息記為查詢到且已超期,計算所述第一類關(guān)鍵資源的哈希值,將所述哈希值添加至所述第一類關(guān)鍵資源的描述信息中; 第二標記子模塊,被配置為將所述查詢子模塊查詢到的且尚未超期的所述網(wǎng)頁的第二類關(guān)鍵資源的描述信息記為查詢到且尚未超期; 第三標記子模塊,被配置為將所述查詢子模塊未查詢到的所述網(wǎng)頁的第三類關(guān)鍵資源的描述信息記為未查詢到。12.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述裝置還包括: 第二接收模塊,被配置為接收所述代理服務器反饋的所述第二加載應答; 第二渲染模塊,被配置為當所述第二加載應答中僅包含代碼文件時,利用所述代碼文件以及本地存儲的所述網(wǎng)頁的關(guān)鍵資源,渲染顯示所述網(wǎng)頁; 第三渲染模塊,被配置為當所述第二加載應答中僅包括代碼文件和差量數(shù)據(jù)時,根據(jù)所述差量數(shù)據(jù)以及存儲的與所述差量數(shù)據(jù)對應的原始關(guān)鍵資源,將所述原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)所述應用關(guān)鍵資源、所述代碼文件以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁; 第四渲染模塊,被配置為當所述第二加載應答中包括代碼文件、差量數(shù)據(jù)和關(guān)鍵資源時,根據(jù)所述差量數(shù)據(jù)以及存儲的與所述差量數(shù)據(jù)對應的原始關(guān)鍵資源,將所述原始關(guān)鍵資源更新為應用關(guān)鍵資源,根據(jù)所述應用關(guān)鍵資源、所述代碼文件、所述第二加載應答中包括的關(guān)鍵資源以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁。13.—種網(wǎng)頁加載裝置,其特征在于,應用于代理服務器中,所述裝置包括: 第一接收模塊,被配置為接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,所述第一加載請求是所述移動終端首次加載所述網(wǎng)頁時發(fā)送的加載請求; 第一獲取模塊,被配置為獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源; 第一反饋模塊,被配置為向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答,所述第一加載應答用于觸發(fā)所述移動終端利用所述代碼文件和所述關(guān)鍵資源對所述網(wǎng)頁進行渲染顯示。14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述第一獲取模塊,包括: 第一獲取子模塊,被配置為在所述代理服務器未接收過所述網(wǎng)頁的歷史加載請求時,從所述網(wǎng)頁的目標服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的所有資源,提取出所述網(wǎng)頁的關(guān)鍵資源; 查詢子模塊,被配置為在所述代理服務器接收過所述網(wǎng)頁的歷史加載請求時,查詢存儲的所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源。15.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述裝置還包括: 第二接收模塊,被配置為接收所述移動終端發(fā)送的網(wǎng)頁的第二加載請求,所述第二加載請求包括所述網(wǎng)頁的關(guān)鍵資源的描述信息; 第二獲取模塊,被配置為獲取存儲的與所述網(wǎng)頁對應的代碼文件; 確定模塊,被配置為根據(jù)所述描述信息確定出需要向所述移動終端反饋的差量數(shù)據(jù)以及關(guān)鍵資源,所述差量數(shù)據(jù)用于反映在所述移動終端存儲的關(guān)鍵資源與所述代理服務器存儲的同一個關(guān)鍵資源之間的差值; 第二反饋模塊,被配置為向所述移動終端反饋添加有所述確定出的差量數(shù)據(jù)、關(guān)鍵資源以及所述代碼文件的第二加載應答,所述第二加載應答用于觸發(fā)所述移動終端根據(jù)所述差量數(shù)據(jù)計算所述代理服務器存儲的與得到所述差量數(shù)據(jù)的關(guān)鍵資源,根據(jù)所述計算出的關(guān)鍵資源、所述第二加載應答中的代碼文件以及本地存儲的所述網(wǎng)頁的其他關(guān)鍵資源,渲染顯示所述網(wǎng)頁。16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述確定模塊,包括: 確定子模塊,被配置為當一個關(guān)鍵資源的描述信息包括用于指示查詢到且已超期的信息以及哈希值,則根據(jù)所述哈希值確定具備所述哈希值的原始關(guān)鍵資源; 第二獲取子模塊,被配置為獲取存儲的與所述原始關(guān)鍵資源為同一個資源的應用關(guān)鍵資源,計算所述原始關(guān)鍵資源和所述應用關(guān)鍵資源之間的差值,得到與所述原始關(guān)鍵資源對應的差量數(shù)據(jù),所述差量數(shù)據(jù)用于觸發(fā)所述移動終端將所述原始關(guān)鍵資源更新為所述應用關(guān)鍵資源。17.—種網(wǎng)頁加載裝置,其特征在于,應用于移動終端中,所述裝置包括: 處理器; 用于存儲處理器可執(zhí)行指令的存儲器; 其中,所述處理器被配置為: 在需要加載網(wǎng)頁時,確定是否存儲有所述網(wǎng)頁的關(guān)鍵資源; 在未存儲有所述網(wǎng)頁的關(guān)鍵資源時,向代理服務器發(fā)送所述網(wǎng)頁的第一加載請求,所述第一加載請求用于觸發(fā)所述代理服務器獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源,向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答;接收所述代理服務器反饋的所述第一加載應答; 利用所述第一加載應答包括的所述代碼文件和所述關(guān)鍵資源,對所述網(wǎng)頁進行渲染顯不O18.—種網(wǎng)頁加載裝置,其特征在于,應用于代理服務器中,所述裝置包括: 處理器; 用于存儲處理器可執(zhí)行指令的存儲器; 其中,所述處理器被配置為: 接收移動終端發(fā)送的網(wǎng)頁的第一加載請求,所述第一加載請求是所述移動終端首次加載所述網(wǎng)頁時發(fā)送的加載請求; 獲取所述網(wǎng)頁的代碼文件以及所述網(wǎng)頁的關(guān)鍵資源; 向所述移動終端反饋包括所述代碼文件和所述網(wǎng)頁的關(guān)鍵資源的第一加載應答,所述第一加載應答用于觸發(fā)所述移動終端利用所述代碼文件和所述關(guān)鍵資源對所述網(wǎng)頁進行渲染顯示。
【文檔編號】G06F17/30GK106066868SQ201610366038
【公開日】2016年11月2日
【申請日】2016年5月27日 公開號201610366038.X, CN 106066868 A, CN 106066868A, CN 201610366038, CN-A-106066868, CN106066868 A, CN106066868A, CN201610366038, CN201610366038.X
【發(fā)明人】於一飛, 程良渝, 徐國市
【申請人】北京小米移動軟件有限公司