一種數(shù)據(jù)處理方法、客戶端、頁面引擎及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種數(shù)據(jù)處理方法、客戶端、頁面引擎及系統(tǒng),其中,該方法包括:根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù);對(duì)劃分后的數(shù)據(jù)選擇采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸??蛻舳税〝U(kuò)展接口和第一數(shù)據(jù)傳輸單元,第一數(shù)據(jù)傳輸單元用于采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸。采用本發(fā)明,降低了服務(wù)器的資源占用,提供了可靠高效的數(shù)據(jù)傳輸。
【專利說明】一種數(shù)據(jù)處理方法、客戶端、頁面引擎及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)數(shù)據(jù)交互的處理技術(shù),尤其涉及一種數(shù)據(jù)處理方法、客戶端、頁面引擎及系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)有互聯(lián)網(wǎng)領(lǐng)域數(shù)據(jù)交互的處理技術(shù)為:瀏覽器采用B/S模式與后臺(tái)服務(wù)器進(jìn)行數(shù)據(jù)交互,所述B/S模式為瀏覽器/服務(wù)器模式,該B/S模式是無狀態(tài)的通信方式,當(dāng)瀏覽器與服務(wù)器建立連接時(shí),瀏覽器基于超文本傳輸協(xié)議(http)向服務(wù)器發(fā)送數(shù)據(jù)請(qǐng)求,服務(wù)器響應(yīng)該數(shù)據(jù)請(qǐng)求,將數(shù)據(jù)返回瀏覽器,關(guān)閉瀏覽器與服務(wù)器間的連接。當(dāng)服務(wù)器需要主動(dòng)向?yàn)g覽器推送數(shù)據(jù)時(shí)主要有以下幾種策略:
[0003](I)長連接策略:用一個(gè)傳輸控制協(xié)議(tcp)連接處理多個(gè)http請(qǐng)求的通信方式,也稱為http ke印-alive,實(shí)現(xiàn)原理是在服務(wù)器處理瀏覽器的數(shù)據(jù)請(qǐng)求后,在瀏覽器與服務(wù)器間一直保持連接狀態(tài),服務(wù)器也可以主動(dòng)推送數(shù)據(jù)到瀏覽器,如圖1所示。
[0004](2)輪詢策略:是一種周期性發(fā)數(shù)據(jù)請(qǐng)求主動(dòng)獲取后臺(tái)服務(wù)器數(shù)據(jù)的通信方式,即:瀏覽器周期性向服務(wù)器發(fā)送數(shù)據(jù)請(qǐng)求,主動(dòng)詢問數(shù)據(jù)更新。
[0005](3)長輪詢策略:對(duì)上述(2)的普通輪詢策略的改進(jìn),服務(wù)器在收到瀏覽器發(fā)送的輪詢數(shù)據(jù)請(qǐng)求時(shí),如果沒有新數(shù)據(jù),不是立即響應(yīng)該數(shù)據(jù)請(qǐng)求,而是盡可能的延時(shí)響應(yīng),從而減少輪詢的次數(shù),如圖2所示。
[0006](4)網(wǎng)絡(luò)套接字(WebSocket)策略:一種基于tcp的html5通信技術(shù)。通過WebSocket建立一個(gè)連接,可以實(shí)現(xiàn)瀏覽器和服務(wù)器的全雙工通信。
[0007]在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下缺點(diǎn):
[0008]I)服務(wù)器資源占用大:不管是B/S模式的長輪詢策略還是長連接策略,都會(huì)造成服務(wù)器保持一段時(shí)間的連接狀態(tài),對(duì)服務(wù)器的資源占用比較大。而且,輪詢機(jī)制會(huì)產(chǎn)生較多數(shù)據(jù)請(qǐng)求,服務(wù)器需要對(duì)數(shù)據(jù)請(qǐng)求進(jìn)行應(yīng)答,同樣會(huì)造成服務(wù)器資源的消耗。
[0009]2)兼容性=WebSocket是html5的技術(shù),并不普及,并且存在瀏覽器兼容性的問題,目前只有chrome, Firefox等瀏覽器支持。
[0010]3)安全性:B/S模式時(shí)采用的http協(xié)議,安全性不高,而且,基于http協(xié)議的長連接策略有時(shí)效性,不是穩(wěn)定的可靠連接。是否獨(dú)權(quán)都能解決
【發(fā)明內(nèi)容】
[0011]有鑒于此,本發(fā)明的主要目的在于提供一種數(shù)據(jù)處理方法、客戶端、頁面引擎及系統(tǒng),兼具B/S模式和C/S模式的優(yōu)勢(shì),降低了服務(wù)器的資源占用,提供了可靠高效的數(shù)據(jù)傳輸。
[0012]為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0013]一種數(shù)據(jù)處理方法,該方法包括:
[0014]根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù);
[0015]對(duì)劃分后的數(shù)據(jù)選擇采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸。
[0016]其中,所述對(duì)劃分后的數(shù)據(jù)選擇采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸,至少包括以下任一種方式:
[0017]方式1:前端與后臺(tái)間數(shù)據(jù)交互為請(qǐng)求/應(yīng)答方式時(shí),對(duì)劃分為時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),采用所述客戶端/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸;
[0018]方式2:前端與后臺(tái)間數(shù)據(jù)交互為請(qǐng)求/應(yīng)答方式時(shí),對(duì)劃分為時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù),采用所述瀏覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸;
[0019]方式3:后臺(tái)向前端主動(dòng)推送數(shù)據(jù)方式時(shí),不區(qū)分?jǐn)?shù)據(jù)類型,采用所述客戶端/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸;
[0020]方式4:后臺(tái)向前端主動(dòng)推送數(shù)據(jù)方式時(shí),對(duì)劃分為時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),采用所述客戶端/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸。
[0021]其中,該方法還包括:所述根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù)之前觸發(fā)加載頁面請(qǐng)求,將后臺(tái)根據(jù)所述加載頁面請(qǐng)求返回的數(shù)據(jù)顯示在內(nèi)嵌頁面中。
[0022]其中,瀏覽器加載顯示所述內(nèi)嵌頁面后,頁面引擎與后臺(tái)間采用客戶端/服務(wù)器模式、或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸;
[0023]所述瀏覽器包括擴(kuò)展的JS接口。
[0024]其中,頁面引擎與后臺(tái)間采用所述客戶端/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸,具體包括:
[0025]頁面引擎中的腳本通過調(diào)用瀏覽器的所述JS接口觸發(fā)從客戶端拉取數(shù)據(jù)的處理,之后觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,客戶端采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),客戶端通過所述JS接口將獲取的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)提供給頁面引擎并更新顯示在內(nèi)嵌頁面中;
[0026]或者,客戶端采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),瀏覽器通過所述JS接口回調(diào)頁面引擎中的腳本觸發(fā)從客戶端推送數(shù)據(jù)的處理,客戶端通過所述JS接口將推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)提供給頁面引擎并更新顯示在內(nèi)嵌頁面中。
[0027]其中,頁面引擎與后臺(tái)間采用所述瀏覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸,具體包括:
[0028]頁面引擎中的腳本通過調(diào)用瀏覽器觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述瀏覽器/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù),提供給頁面引擎并更新顯示在內(nèi)嵌頁面中。
[0029]一種客戶端,所述客戶端包括:
[0030]擴(kuò)展接口,集成在所述客戶端上,用于獲取根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分后的數(shù)據(jù);
[0031]第一數(shù)據(jù)傳輸單元,用于采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸。
[0032]其中,所述擴(kuò)展接口為擴(kuò)展的JS接口;
[0033]所述擴(kuò)展的JS接口,進(jìn)一步用于被頁面引擎中的腳本調(diào)用后觸發(fā)從客戶端拉取數(shù)據(jù)的處理;
[0034]所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于觸發(fā)從客戶端拉取數(shù)據(jù)的處理之后,觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù);
[0035]或者,
[0036]所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于客戶端采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù);
[0037]所述擴(kuò)展的JS接口,進(jìn)一步用于通過回調(diào)頁面引擎中的腳本觸發(fā)從客戶端推送數(shù)據(jù)的處理。
[0038]其中,所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理情況下,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述瀏覽器/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù)。
[0039]一種頁面引擎,所述頁面引擎包括:
[0040]腳本執(zhí)行單元,用于根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù)后,通過調(diào)用或被調(diào)用與集成在客戶端上的瀏覽器交互;
[0041]顯示單元,用于初始化時(shí)加載顯示內(nèi)嵌頁面;采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸時(shí),獲取根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分后的數(shù)據(jù)對(duì)內(nèi)嵌頁面進(jìn)行更新顯示。
[0042]其中,所述腳本執(zhí)行單元,進(jìn)一步用于根據(jù)腳本調(diào)用瀏覽器的JS接口觸發(fā)從客戶端拉取數(shù)據(jù)的處理,之后觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,采用所述客戶端/服務(wù)器模式與服務(wù)器通信,客戶端從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)后,通過所述JS接口收到所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù);
[0043]所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中;
[0044]或者,
[0045]所述腳本執(zhí)行單元,進(jìn)一步用于采用所述客戶端/服務(wù)器模式與服務(wù)器通信,客戶端從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)后,通過瀏覽器的JS接口腳本被回調(diào)觸發(fā)從客戶端推送數(shù)據(jù)的處理,通過所述JS接口收到所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù);
[0046]所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中。
[0047]其中,所述腳本執(zhí)行單元,進(jìn)一步用于調(diào)用根據(jù)腳本調(diào)用瀏覽器觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述瀏覽器/服務(wù)器模式與服務(wù)器通信,收到時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù);
[0048]所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中。
[0049]一種數(shù)據(jù)處理系統(tǒng),該系統(tǒng)包括:服務(wù)器、瀏覽器、如上述權(quán)利要求任一項(xiàng)所述的客戶端、及如上述權(quán)利要求任一項(xiàng)所述的頁面引擎;其中,所述服務(wù)器作為數(shù)據(jù)源,用于為客戶端提供數(shù)據(jù)、或?yàn)闉g覽器提供數(shù)據(jù);頁面引擎將從瀏覽器獲取的數(shù)據(jù)加載顯示在內(nèi)嵌頁面中。
[0050]本發(fā)明實(shí)施例的數(shù)據(jù)處理方法包括:根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù);對(duì)劃分后的數(shù)據(jù)選擇采用C/S模式和/或B/S模式進(jìn)行數(shù)據(jù)傳輸。
[0051]本發(fā)明實(shí)施例提供的技術(shù)方案帶來的有益效果是:區(qū)別于現(xiàn)有技術(shù)單一的B/S模式,由于區(qū)分?jǐn)?shù)據(jù)類型,對(duì)不同數(shù)據(jù)類型的數(shù)據(jù)分別采用:C/S模式、B/S模式中任一模式或兩種模式的交互組合模式,能充分利用C/S模式及B/S模式的優(yōu)勢(shì),降低了服務(wù)器的資源占用,對(duì)于C/S模式能確保安全性,提供可靠高效的數(shù)據(jù)傳輸。
【專利附圖】
【附圖說明】
[0052]圖1為現(xiàn)有技術(shù)長連接的實(shí)現(xiàn)流程示意圖;
[0053]圖2為現(xiàn)有技術(shù)長輪詢的實(shí)現(xiàn)流程示意圖;
[0054]圖3為本發(fā)明實(shí)施例一的實(shí)現(xiàn)流程示意圖;
[0055]圖4為本發(fā)明B/S模式及C/S模式的傳輸拓?fù)涫疽鈭D;
[0056]圖5為本發(fā)明實(shí)施例三B/S模式的加載內(nèi)嵌頁面的交互示意圖;
[0057]圖6為本發(fā)明實(shí)施例五的C/S模式拉取數(shù)據(jù)的交互示意圖;
[0058]圖7為本發(fā)明實(shí)施例六的C/S模式推送數(shù)據(jù)的交互示意圖;
[0059]圖8為本發(fā)明實(shí)施例七的B/S模式拉取數(shù)據(jù)的交互示意圖;
[0060]圖9為本發(fā)明實(shí)施例七一應(yīng)用平臺(tái)的數(shù)據(jù)顯示示意圖;
[0061]圖10為本發(fā)明實(shí)施例八的客戶端組成結(jié)構(gòu)示意圖;
[0062]圖11為本發(fā)明實(shí)施例十二的頁面引擎組成結(jié)構(gòu)示意圖;
[0063]圖12為本發(fā)明實(shí)施例十六的系統(tǒng)組成結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0064]本發(fā)明的基本思想是:根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù);對(duì)劃分后的數(shù)據(jù)選擇采用C/S模式、和/或B/S模式進(jìn)行數(shù)據(jù)傳輸。
[0065]下面結(jié)合附圖對(duì)技術(shù)方案的實(shí)施作進(jìn)一步的詳細(xì)描述。
[0066]實(shí)施例一:
[0067]如圖3所示為本發(fā)明實(shí)施例一的數(shù)據(jù)處理方法的實(shí)現(xiàn)流程示意圖,該流程包括以下步驟:
[0068]步驟101、根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù)。
[0069]這里,本步驟劃分?jǐn)?shù)據(jù)的依據(jù)為:1)根據(jù)時(shí)間敏感度劃分時(shí),原則上時(shí)間敏感度高的數(shù)據(jù),需要時(shí)效性,因此,將時(shí)間敏感度高的數(shù)據(jù)后續(xù)采用C/S模式進(jìn)行數(shù)據(jù)傳輸;根據(jù)時(shí)間敏感度劃分時(shí),原則上時(shí)間敏感度低的數(shù)據(jù),無需考慮時(shí)效性,因此,將時(shí)間敏感度低的數(shù)據(jù)后續(xù)采用B/S模式進(jìn)行數(shù)據(jù)傳輸;2)根據(jù)數(shù)據(jù)量劃分時(shí),原則上數(shù)據(jù)量小的數(shù)據(jù),不占用網(wǎng)絡(luò)帶寬,技術(shù)上容易實(shí)現(xiàn),可考慮實(shí)時(shí)傳輸?shù)男枰?,將?shù)據(jù)量小的數(shù)據(jù)后續(xù)采用C/S模式進(jìn)行數(shù)據(jù)傳輸;根據(jù)數(shù)據(jù)量劃分時(shí),原則上數(shù)據(jù)量大的數(shù)據(jù),占用網(wǎng)絡(luò)帶寬,可不考慮實(shí)時(shí)傳輸?shù)男枰?,可以周期性傳輸,將?shù)據(jù)量大的數(shù)據(jù)后續(xù)采用B/S模式進(jìn)行數(shù)據(jù)傳輸;3)根據(jù)時(shí)間敏感度和數(shù)據(jù)量劃分時(shí),就是兼具考慮時(shí)間敏感度和數(shù)據(jù)量的需要,同上述I)和2)描述的原理,不做贅述,對(duì)于時(shí)間敏感度高和數(shù)據(jù)量小的數(shù)據(jù),后續(xù)采用C/S模式進(jìn)行數(shù)據(jù)傳輸;對(duì)于時(shí)間敏感度低和數(shù)據(jù)量大的數(shù)據(jù),后續(xù)采用B/S模式進(jìn)行數(shù)據(jù)傳輸。
[0070]這里,就所述時(shí)間敏感度劃分的依據(jù)而言,I)時(shí)間敏感度劃分的依據(jù)可以由用戶的容忍度決定,比如“微博收聽關(guān)系”可以作為時(shí)間敏感度高的數(shù)據(jù),原因是它在客戶端上的不同位置,包括不同的內(nèi)嵌頁面(瀏覽器加載顯示的網(wǎng)頁簡(jiǎn)稱為內(nèi)嵌頁面,對(duì)應(yīng)的,瀏覽器也可以稱為頁面容器)以及普通的客戶端面板上等會(huì)多處出現(xiàn),當(dāng)用戶在一處操作時(shí),其他位置的“微博收聽關(guān)系”應(yīng)該保持一致,也就是說位于客戶端面板上一處微博收聽關(guān)系”變更時(shí),后臺(tái)服務(wù)器需要即時(shí)推送“微博收聽關(guān)系”的變更到客戶端上的其它所有出現(xiàn)位置;2)時(shí)間敏感度劃分的依據(jù)也可以是業(yè)務(wù)實(shí)時(shí)性的需要,一些狀態(tài)量,以狀態(tài)量為“計(jì)數(shù)”為例,也希望后臺(tái)服務(wù)器能即時(shí)推送給用戶,比如發(fā)生好友微博@我,將會(huì)觸發(fā)@消息計(jì)數(shù)增加,即時(shí)推送給用戶是有必要的。
[0071]這里,就所述數(shù)據(jù)量劃分的依據(jù)而言,如用戶創(chuàng)造的內(nèi)容源“微博正文”,“相冊(cè)”,“心情”等等,可以劃為數(shù)據(jù)量大的部分,區(qū)別于時(shí)間敏感度多是一些狀態(tài),如“微博正文刪除狀態(tài)”。
[0072]步驟102、對(duì)劃分后的數(shù)據(jù)選擇采用C/S模式、和/或B/S模式進(jìn)行數(shù)據(jù)傳輸。
[0073]這里,C/S模式為客戶端/服務(wù)器模式,B/S模式為瀏覽器/服務(wù)器模式。其中,“C”是客戶端(Client)的簡(jiǎn)寫,客戶端指采用圖形用戶界面的各種應(yīng)用程序,比如微博、即時(shí)通信工具等?!癇”是瀏覽器(Browser)的簡(jiǎn)寫,瀏覽器和客戶端都位于用戶終端(如手持移動(dòng)終端,個(gè)人電腦等)本地?!癝”是服務(wù)器(Server)的簡(jiǎn)寫,服務(wù)器對(duì)瀏覽器和客戶端的數(shù)據(jù)請(qǐng)求進(jìn)行響應(yīng),或者主動(dòng)推送數(shù)據(jù)。
[0074]如圖4所示,B/S模式情況下,本發(fā)明實(shí)施例在采用B/S模式數(shù)據(jù)交互時(shí)包括的各個(gè)控制節(jié)點(diǎn)為頁面引擎、瀏覽器和服務(wù)器,其傳輸拓?fù)淙鐖D4中細(xì)實(shí)線所示;C/S模式情況下,由于瀏覽器需借助客戶端的擴(kuò)展接口經(jīng)由客戶端到服務(wù)器,才能達(dá)到瀏覽器采用C/S模式與服務(wù)器通信的目的,因此,本發(fā)明實(shí)施例在采用C/S模式數(shù)據(jù)交互時(shí)包括的各個(gè)控制節(jié)點(diǎn)為頁面引擎、瀏覽器、客戶端和服務(wù)器,其傳輸拓?fù)淙鐖D4中粗實(shí)線所示。所述客戶端的擴(kuò)展接口用于支持瀏覽器與客戶端的進(jìn)程通信,如圖4中的陰影填充所示。
[0075]瀏覽器與客戶端配合工作的一種場(chǎng)景為:如當(dāng)前客戶端為微博,微博中存在網(wǎng)頁地址鏈接,用戶點(diǎn)擊所述網(wǎng)頁地址鏈接,會(huì)跳轉(zhuǎn)到本地的瀏覽器,瀏覽器用于根據(jù)所述網(wǎng)頁地址鏈接打開其所指向的網(wǎng)頁地址并在瀏覽器視窗加載顯示網(wǎng)頁內(nèi)容。具體的,針對(duì)加載顯示網(wǎng)頁內(nèi)容而言,以B/S模式為例,瀏覽器觸發(fā)加載頁面請(qǐng)求,通過http協(xié)議向后臺(tái)服務(wù)器請(qǐng)求返回?cái)?shù)據(jù),后臺(tái)服務(wù)器返回的數(shù)據(jù)包括內(nèi)容、樣式、腳本,瀏覽器收到返回的數(shù)據(jù),通過頁面引擎將返回的數(shù)據(jù)加載顯示在內(nèi)嵌頁面(瀏覽器視窗)中。
[0076]本實(shí)施例提供的數(shù)據(jù)處理方法,其有益效果為:客戶端包括擴(kuò)展接口(具體為擴(kuò)展的JS接口),用于建立客戶端與瀏覽器的進(jìn)程通信,利用瀏覽器打開的Web網(wǎng)頁,即所述內(nèi)嵌頁面按時(shí)間敏感度和/或數(shù)據(jù)量劃分成兩部分,選擇采用C/S模式、和/或B/S模式進(jìn)行數(shù)據(jù)傳輸,能充分利用C/S模式及B/S模式的優(yōu)勢(shì),對(duì)于C/S模式能確保安全性,提供可靠高效的數(shù)據(jù)傳輸,而且?guī)椭鶥/S模式進(jìn)行數(shù)據(jù)傳輸分擔(dān),能避免單一的B/S模式時(shí)對(duì)服務(wù)器的資源占用。
[0077]這里需要指出的是:所述擴(kuò)展接口為了建立客戶端與瀏覽器的進(jìn)程通信,在擴(kuò)展接口代碼中設(shè)置瀏覽器功能描述語言,以便觸發(fā)進(jìn)程通信后,瀏覽器根據(jù)識(shí)別出的瀏覽器功能描述語言執(zhí)行操作。
[0078]所述擴(kuò)展接口位于具有瀏覽器功能的瀏覽器控件中,但是這個(gè)瀏覽器控件區(qū)別于已有的瀏覽器控件,已有的瀏覽器控件類似于網(wǎng)頁中的彈出對(duì)話框,是基于瀏覽器本身開發(fā)的瀏覽器控件,即已有的瀏覽器控件屬于外部控件;而本發(fā)明相對(duì)于客戶端來說的瀏覽器控件,是客戶端基于瀏覽器設(shè)計(jì)的內(nèi)嵌控件,屬于內(nèi)部控件,由于在客戶端開發(fā)了很多控件,因此,本發(fā)明相對(duì)于客戶端來說的瀏覽器控件,針對(duì)客戶端的改進(jìn)來說是個(gè)控件,但是對(duì)于瀏覽器自身來說,實(shí)際上就是在客戶端集成的新型瀏覽器,從這個(gè)層面理解,從而客戶端包括的擴(kuò)展接口(具體為擴(kuò)展的JS接口)即為所述瀏覽器包括的擴(kuò)展的JS接口。在客戶端集成的瀏覽器包括擴(kuò)展的JS接口是本發(fā)明的瀏覽器區(qū)別于現(xiàn)有瀏覽器的創(chuàng)新點(diǎn)之
O
[0079]進(jìn)一步,上述實(shí)施例一中,所述根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù),具體包括:根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量將數(shù)據(jù)劃分為以下至少兩類數(shù)據(jù):
[0080]采用所述B/S傳輸?shù)臄?shù)據(jù);
[0081]采用所述C/S模式傳輸?shù)臄?shù)據(jù)。
[0082]實(shí)施例二:為基于上述實(shí)施例一的描述進(jìn)一步優(yōu)化的方案,所述對(duì)劃分后的數(shù)據(jù)選擇采用C/S模式、和/或B/S模式進(jìn)行數(shù)據(jù)傳輸,至少包括以下任一種方式:
[0083]方式1:前端與后臺(tái)間數(shù)據(jù)交互為請(qǐng)求/應(yīng)答方式時(shí),對(duì)劃分為時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸;
[0084]方式2:前端與后臺(tái)間數(shù)據(jù)交互為請(qǐng)求/應(yīng)答方式時(shí),對(duì)劃分為時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù),采用所述B/S模式進(jìn)行數(shù)據(jù)傳輸;
[0085]方式3:后臺(tái)向前端主動(dòng)推送數(shù)據(jù)方式時(shí),不區(qū)分?jǐn)?shù)據(jù)類型,采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸;
[0086]方式4:后臺(tái)向前端主動(dòng)推送數(shù)據(jù)方式時(shí),對(duì)劃分為時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸。
[0087]本實(shí)施例提供的數(shù)據(jù)處理方法,其有益效果為:除了區(qū)分?jǐn)?shù)據(jù)類型,進(jìn)一步區(qū)分交互方式進(jìn)行數(shù)據(jù)傳輸,對(duì)于請(qǐng)求/應(yīng)答方式,如果是時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),考慮到時(shí)效性和技術(shù)實(shí)現(xiàn)簡(jiǎn)便的需要,則采用C/S模式進(jìn)行數(shù)據(jù)傳輸,如果是時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù),無需考慮到時(shí)效性和技術(shù)實(shí)現(xiàn)簡(jiǎn)便的需要,則采用B/S模式進(jìn)行數(shù)據(jù)傳輸。
[0088]具體的,一方面,針對(duì)客戶端集成瀏覽器打開的Web網(wǎng)頁而言,其頁面按時(shí)間敏感度和/或數(shù)據(jù)量劃分成兩部分,將一部分時(shí)間敏感度高和/或數(shù)據(jù)量小的部分?jǐn)?shù)據(jù)通過C/S模式交互,將另一部分時(shí)間敏感度低和/或數(shù)據(jù)量大的部分?jǐn)?shù)據(jù)通過現(xiàn)有的B/S模式交互,從而對(duì)劃分的不同類型數(shù)據(jù)采用不同模式的優(yōu)勢(shì)與服務(wù)器進(jìn)行交互,采用C/S模式能提高安全性,B/S模式基于的http協(xié)議,是用于網(wǎng)頁瀏覽的一個(gè)協(xié)議,http協(xié)議是在tcp協(xié)議之上的應(yīng)用層協(xié)議,而C/S模式基于的tcp協(xié)議,是機(jī)器之間建立連接用的到的一個(gè)協(xié)議,屬于傳輸層協(xié)議,提供數(shù)據(jù)包的可靠傳輸,以保證數(shù)據(jù)原樣無損地傳至目的地,C/S模式相比B/S模式在安全性方面的優(yōu)勢(shì)在于:1)靈活性好,可以自由選擇安全機(jī)制(安全協(xié)議,力口密算法等);2)點(diǎn)對(duì)點(diǎn)結(jié)構(gòu)模式,針對(duì)固定用戶群,如即時(shí)通訊(IM)工具用戶,提供多層次的鑒權(quán)登錄機(jī)制,B/S方式多采用開放協(xié)議,安全性由服務(wù)器保證,從而本實(shí)施例采用基于tcp協(xié)議的C/S模式,比采用基于http協(xié)議的B/S模式更安全;另一方面,采用C/S模式,由于tcp協(xié)議是機(jī)器間點(diǎn)對(duì)點(diǎn)的數(shù)據(jù)傳輸,比http協(xié)議更快捷高效,也就是說,C/S模式,能為用戶提供不僅可靠而且高效的數(shù)據(jù)傳輸。
[0089]這里需要指出的是:對(duì)于后臺(tái)向前端主動(dòng)推送數(shù)據(jù)的方式,可以不區(qū)分?jǐn)?shù)據(jù)類型,無論那種數(shù)據(jù)類型都采用C/S模式進(jìn)行數(shù)據(jù)傳輸。采用C/S模式進(jìn)行數(shù)據(jù)傳輸,而不采用B/S模式的優(yōu)越性如上述請(qǐng)求/應(yīng)答方式采用C/S模式的優(yōu)越性描述,在此不做贅述。
[0090]優(yōu)選的,對(duì)于后臺(tái)向前端主動(dòng)推送數(shù)據(jù)的方式,是區(qū)分?jǐn)?shù)據(jù)類型,對(duì)時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)采用C/S模式進(jìn)行數(shù)據(jù)傳輸,好處是:有效解決后臺(tái)服務(wù)器主動(dòng)向?yàn)g覽器頁面推送數(shù)據(jù)的需求,而不會(huì)給服務(wù)器帶來很高的請(qǐng)求量和持續(xù)處于連接態(tài)時(shí)導(dǎo)致的服務(wù)器資源的大量消耗。當(dāng)然,對(duì)于后臺(tái)向前端主動(dòng)推送數(shù)據(jù)的方式,也可以采用現(xiàn)有的B/S模式實(shí)現(xiàn),只不過從服務(wù)器資源占用的角度考慮,與C/S模式相比沒有太多的優(yōu)勢(shì)。
[0091]實(shí)施例三:為基于上述實(shí)施例一或?qū)嵤├拿枋鲞M(jìn)一步優(yōu)化的方案,該方法還包括:所述根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù)之前觸發(fā)加載頁面請(qǐng)求,根據(jù)所述加載頁面請(qǐng)求返回的數(shù)據(jù)顯示在內(nèi)嵌頁面中。如圖5所示,內(nèi)嵌頁面加載的交互過程具體為:采用B/S模式實(shí)現(xiàn),瀏覽器觸發(fā)加載頁面請(qǐng)求,通過http協(xié)議向后臺(tái)服務(wù)器請(qǐng)求返回?cái)?shù)據(jù),后臺(tái)服務(wù)器返回的數(shù)據(jù)包括內(nèi)容、樣式、腳本,瀏覽器收到返回的數(shù)據(jù),通過頁面引擎將返回的數(shù)據(jù)加載顯示在內(nèi)嵌頁面中。其中,腳本即為可執(zhí)行的代碼,本發(fā)明的腳本具體為JS腳本,運(yùn)行在用戶終端的瀏覽器上。所述內(nèi)嵌頁面也可以稱為展示數(shù)據(jù)的被展示的對(duì)象,它包括上述內(nèi)容、樣式、腳本等等,該過程類似于瀏覽器加載一個(gè)網(wǎng)頁進(jìn)行顯示。
[0092]實(shí)施例四:為基于上述實(shí)施例三的描述進(jìn)一步優(yōu)化的方案,瀏覽器已經(jīng)加載顯示所述內(nèi)嵌頁面后,頁面引擎與后臺(tái)服務(wù)器間采用C/S模式、或B/S模式進(jìn)行數(shù)據(jù)傳輸。
[0093]這里需要指出的是:所述瀏覽器已經(jīng)加載顯示所述內(nèi)嵌頁面包括部分加載和加載完成兩個(gè)場(chǎng)景。
[0094]為了實(shí)現(xiàn)采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸,本實(shí)施例客戶端包括擴(kuò)展的JS接口,頁面引擎通過調(diào)用所述瀏覽器的JS接口觸發(fā)客戶端與后臺(tái)服務(wù)器間采用C/S模式進(jìn)行數(shù)據(jù)傳輸。
[0095]本實(shí)施例提供的數(shù)據(jù)處理方法,其有益效果為:采用B/S模式進(jìn)行數(shù)據(jù)傳輸時(shí),通過頁面引擎已經(jīng)加載顯示的內(nèi)嵌頁面要想獲得更新的數(shù)據(jù),是直接在瀏覽器與服務(wù)器間進(jìn)行交互,以實(shí)現(xiàn)數(shù)據(jù)傳輸,傳輸拓?fù)浼軜?gòu)為:通過頁面引擎加載顯示的內(nèi)嵌頁面-瀏覽器-服務(wù)器;而本實(shí)施例采用所述瀏覽器來實(shí)現(xiàn)C/S模式,通過頁面引擎已經(jīng)加載顯示的內(nèi)嵌頁面要想獲得更新的數(shù)據(jù),可以通過所述瀏覽器提供的該JS接口連接到頁面引擎,該瀏覽器集成在客戶端上,也就是說,瀏覽器與服務(wù)器間進(jìn)行交互,以實(shí)現(xiàn)數(shù)據(jù)傳輸,是基于該JS接口建立的傳輸通路間接通過客戶端來轉(zhuǎn)發(fā)數(shù)據(jù),傳輸拓?fù)浼軜?gòu)為:通過頁面引擎加載顯示的內(nèi)嵌頁面-瀏覽器-客戶端-服務(wù)器,由于客戶端與服務(wù)器間是tcp協(xié)議,機(jī)器間點(diǎn)對(duì)點(diǎn)傳輸層的通信,且C/S模式基于的tcp協(xié)議的包頭會(huì)比采用B/S模式基于的http協(xié)議的包頭小,較之瀏覽器與服務(wù)器間采用http協(xié)議的應(yīng)用層通信更可靠,快捷,因此,這種通過客戶端集成的瀏覽器提供的該JS接口來轉(zhuǎn)發(fā)數(shù)據(jù)的方式,配合瀏覽器與服務(wù)器間直接數(shù)據(jù)交互來說,采用對(duì)頁面數(shù)據(jù)靈活劃分類型,對(duì)應(yīng)不同的模式及其傳輸路徑,選擇不同的傳輸路徑與后臺(tái)服務(wù)器交互,能對(duì)數(shù)據(jù)負(fù)載進(jìn)行負(fù)載分擔(dān),且提供了可靠高效的數(shù)據(jù)傳輸。
[0096]實(shí)施例五:為基于上述實(shí)施例四的描述進(jìn)一步優(yōu)化的方案。
[0097]針對(duì)請(qǐng)求/應(yīng)答情況而言,頁面引擎與后臺(tái)間采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸,具體包括:頁面引擎中的腳本通過調(diào)用瀏覽器的所述JS接口觸發(fā)從客戶端拉取數(shù)據(jù)的處理,之后觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,客戶端采用所述C/S模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),客戶端通過瀏覽器的所述JS接口將獲取的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)提供給頁面引擎并更新顯示在內(nèi)嵌頁面中,對(duì)應(yīng)的交互過程如圖6所示,傳輸拓?fù)浼軜?gòu)為通過頁面引擎加載顯示的內(nèi)嵌頁面-瀏覽器-客戶端-服務(wù)器。
[0098]實(shí)施例六:為基于上述實(shí)施例四的描述進(jìn)一步優(yōu)化的方案。
[0099]針對(duì)服務(wù)器主動(dòng)推送數(shù)據(jù)情況而言,頁面引擎與后臺(tái)間采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸,具體包括:客戶端采用所述C/S模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),瀏覽器通過瀏覽器的所述JS接口回調(diào)頁面引擎中的腳本觸發(fā)從客戶端推送數(shù)據(jù)的處理,客戶端通過瀏覽器的所述JS接口將推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)提供給頁面引擎并更新顯示在內(nèi)嵌頁面中,對(duì)應(yīng)的交互過程如圖7所示,傳輸拓?fù)浼軜?gòu)為通過頁面引擎加載顯示的內(nèi)嵌頁面-瀏覽器-客戶端-服務(wù)器。
[0100]本實(shí)施例五和六提供的數(shù)據(jù)處理方法,其有益效果為:客戶端包括擴(kuò)展接口(具體為擴(kuò)展的JS接口),用于建立客戶端與瀏覽器的進(jìn)程通信,主要是通過頁面引擎加載顯示的內(nèi)嵌頁面調(diào)用瀏覽器的所述JS接口或被瀏覽器的所述JS接口回調(diào),對(duì)瀏覽器提供的服務(wù)或業(yè)務(wù)應(yīng)用進(jìn)行頁面處理。具體的,對(duì)于時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)部分的數(shù)據(jù)、以及客戶端同瀏覽器其他交互所需的通信,以瀏覽器JS擴(kuò)展的方式拋出所述JS接口,瀏覽器通過所述JS接口在客戶端與所述內(nèi)嵌頁面之間建立傳輸通道,再通過C/S模式在客戶端和后臺(tái)服務(wù)器間交互,這樣,當(dāng)后臺(tái)服務(wù)器有實(shí)時(shí)數(shù)據(jù)要主動(dòng)推送到所述內(nèi)嵌頁面時(shí)可以通過C/S模式通知到客戶端,再以JS擴(kuò)展的方式拋出接口以JS接口回調(diào)的方式交互到所述內(nèi)嵌頁面;對(duì)于時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù)部分,無需借助瀏覽器的所述JS接口在客戶端與所述內(nèi)嵌頁面之間建立傳輸通道,而是通過B/S模式直接在瀏覽器和后臺(tái)服務(wù)器進(jìn)行交互。
[0101]這里,采用上述以JS擴(kuò)展的方式拋出所述JS接口,帶來的有益效果為:一方面,通過JS擴(kuò)展的方式拋出所述JS接口,使得所述內(nèi)嵌頁面和客戶端的耦合度很低,可擴(kuò)展性好,也就是說,所述內(nèi)嵌頁面和客戶端可以分別執(zhí)行各自的處理,比如所述內(nèi)嵌頁面的頁面數(shù)據(jù)更新,客戶端版本升級(jí)等,需要交互處理時(shí),就通過所述JS接口在客戶端與所述內(nèi)嵌頁面間建立通信就好,從而二者中任何一個(gè)有所改變都不會(huì)彼此影響,客戶端通過JS接口提供服務(wù),所述內(nèi)嵌頁面通過調(diào)用接口函數(shù),或注冊(cè)回調(diào)使用這些服務(wù)。JS接口也可以供開發(fā)其他頁面時(shí)復(fù)用。另一方面,由于所述內(nèi)嵌頁面和客戶端的耦合度很低,二者關(guān)聯(lián)性并不強(qiáng),則所述內(nèi)嵌頁面的頁面開發(fā)與客戶端的開發(fā)去耦合也便捷,開發(fā)靈活,可實(shí)現(xiàn)快速迭代,具體來說,以針對(duì)客戶端版本升級(jí)為例,客戶端版本升級(jí)與其內(nèi)嵌頁面的頁面更新無需同步,由于所述內(nèi)嵌頁面的頁面開發(fā)有迭代周期短的優(yōu)點(diǎn),在客戶端首次發(fā)布所述內(nèi)嵌頁面后,所述內(nèi)嵌頁面的更新不需要依賴客戶端的發(fā)布,因此可以實(shí)現(xiàn)快速迭代,由于考慮到客戶端版本兼容問題,有的客戶端版本低,不支持C/S模式,只能對(duì)實(shí)時(shí)性要求高的交互部分先采用B/S模式交互到瀏覽器,等客戶端版本升級(jí)后(待客戶端JS擴(kuò)展開發(fā)完成并更新發(fā)布后),再切換到C/S模式,在能支持C/S模式的情況下,將之前交互到所述內(nèi)嵌頁面的數(shù)據(jù)再用擴(kuò)展的所述JS接口調(diào)回客戶端使用。
[0102]實(shí)施例七:為基于上述實(shí)施例四的描述、或結(jié)合上述實(shí)施例五和六的描述進(jìn)一步優(yōu)化的方案。
[0103]針對(duì)請(qǐng)求/應(yīng)答情況而言,頁面引擎與后臺(tái)間采用所述B/S模式進(jìn)行數(shù)據(jù)傳輸,具體包括:頁面引擎中的腳本通過調(diào)用瀏覽器觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述B/S模式與服務(wù)器通信,從服務(wù)器獲取時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù),提供給頁面引擎并更新顯示在內(nèi)嵌頁面中,對(duì)應(yīng)的交互過程如圖8所示,傳輸拓?fù)浼軜?gòu)為通過頁面引擎加載顯示的內(nèi)嵌頁面-瀏覽器-服務(wù)器,該過程類似于網(wǎng)頁發(fā)起一個(gè)異步請(qǐng)求,多為用戶觸發(fā)的操作:如“翻頁”之類。
[0104]本實(shí)施例提供的數(shù)據(jù)處理方法,其有益效果為:頁面更新顯示的數(shù)據(jù)來源為兩部分,一部分為基于客戶端集成的瀏覽器及其提供的所述JS接口,通過C/S模式獲得的數(shù)據(jù),另一部分為通過B/S模式獲得的數(shù)據(jù)。由于更新顯示在內(nèi)嵌頁面中的數(shù)據(jù)是在客戶端和后臺(tái)服務(wù)器采用C/S模式來通信,由于C/S模式是基于tcp的全雙工的通信方式,優(yōu)勢(shì)是雙工通信的實(shí)時(shí)性好,安全性高,缺點(diǎn)是實(shí)現(xiàn)復(fù)雜,對(duì)于大數(shù)據(jù)量的通信效果不如http,瀏覽器和后臺(tái)服務(wù)器的通信是B/S模式,優(yōu)勢(shì)是簡(jiǎn)單快捷,可以方便地傳輸大量數(shù)據(jù),頁面更新顯示的數(shù)據(jù)由于兼具C/S模式和B/S模式的各自優(yōu)勢(shì)的互補(bǔ),因此,頁面更新顯示的數(shù)據(jù)兼具靠高效以及大量數(shù)據(jù)更新的效果,并且通過C/S模式獲得的數(shù)據(jù)是通過可靠高效的數(shù)據(jù)傳輸?shù)玫降?,從而提高了顯示效率,用戶能盡快看到顯示的部分?jǐn)?shù)據(jù),以及時(shí)做出數(shù)據(jù)反饋,提高與后臺(tái)的互動(dòng)性和數(shù)據(jù)有效性識(shí)別。
[0105]這里,以微博平臺(tái)為例,如圖9所示,頁面顯示的數(shù)據(jù)來源為兩部分,一部分為基于瀏覽器及其提供的所述JS接口,通過C/S模式獲得的數(shù)據(jù),另一部分為通過B/S模式獲得的數(shù)據(jù)。其中,圖9中實(shí)線框起來的諸如收聽關(guān)系,微博的計(jì)數(shù)等屬于時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),是基于瀏覽器及其提供的所述JS接口,通過C/S模式獲得的數(shù)據(jù);圖9中虛線框起來的諸如微博消息體、個(gè)人介紹等屬于時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù),是通過B/S模式獲得的數(shù)據(jù)。
[0106]這里需要指出的是:以下客戶端、頁面引擎、系統(tǒng)及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的好處,與上述方法類似的,同方法的有益效果描述,不做贅述。對(duì)于本發(fā)明裝置實(shí)施例中未披露的技術(shù)細(xì)節(jié),請(qǐng)參照本發(fā)明方法實(shí)施例的描述。
[0107]實(shí)施例八:如圖10所示,客戶端包括:擴(kuò)展接口和第一數(shù)據(jù)傳輸單元,其中,擴(kuò)展接口集成在所述客戶端上,擴(kuò)展接口具體為擴(kuò)展的JS接口,用于獲取根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分后的數(shù)據(jù)。第一數(shù)據(jù)傳輸單元用于采用C/S模式、和/或B/S模式進(jìn)行數(shù)據(jù)傳輸。
[0108]實(shí)施例九:基于實(shí)施例八的描述進(jìn)一步優(yōu)化的方案,客戶端包括擴(kuò)展的JS接口,針對(duì)請(qǐng)求/應(yīng)答情況而言,頁面引擎與后臺(tái)間采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸,所述擴(kuò)展的JS接口,進(jìn)一步用于被頁面引擎中的腳本調(diào)用后觸發(fā)從客戶端拉取數(shù)據(jù)的處理。所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于觸發(fā)從客戶端拉取數(shù)據(jù)的處理之后,觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)。
[0109]實(shí)施例十:基于實(shí)施例八的描述進(jìn)一步優(yōu)化的方案,客戶端包括擴(kuò)展的JS接口,針對(duì)服務(wù)器主動(dòng)推送數(shù)據(jù)情況而言,頁面引擎與后臺(tái)間采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸,所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于客戶端采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)。所述擴(kuò)展的JS接口,進(jìn)一步用于通過回調(diào)頁面引擎中的腳本觸發(fā)從客戶端推送數(shù)據(jù)的處理,客戶端通過所述JS接口推送時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)。
[0110]實(shí)施例^:基于實(shí)施例八的描述、或結(jié)合實(shí)施例九和十進(jìn)一步優(yōu)化的方案,針對(duì)請(qǐng)求/應(yīng)答情況而言,頁面引擎與后臺(tái)間采用所述Β/S模式進(jìn)行數(shù)據(jù)傳輸,所述瀏覽器,進(jìn)一步用于被頁面引擎中的腳本調(diào)用后觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求。所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理情況下,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述瀏覽器/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù)。
[0111]實(shí)施例十二:如圖11所示,頁面引擎包括:腳本執(zhí)行單元和顯示單元,其中,數(shù)據(jù)劃分單元,用于根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù)后,通過調(diào)用或被調(diào)用與集成在客戶端上的瀏覽器交互。顯示單元,用于初始化時(shí)加載顯示內(nèi)嵌頁面;采用C/S模式、和/或Β/S模式進(jìn)行數(shù)據(jù)傳輸時(shí),獲取根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分后的數(shù)據(jù)對(duì)內(nèi)嵌頁面進(jìn)行更新顯示。
[0112]實(shí)施例十三:基于實(shí)施例十二的描述進(jìn)一步優(yōu)化的方案,所述客戶端包括擴(kuò)展的JS接口,針對(duì)請(qǐng)求/應(yīng)答情況而言,頁面引擎與后臺(tái)間采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸,所述腳本執(zhí)行單元,進(jìn)一步用于根據(jù)腳本調(diào)用瀏覽器的JS接口觸發(fā)從客戶端拉取數(shù)據(jù)的處理,之后觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,采用所述客戶端/服務(wù)器模式與服務(wù)器通信,客戶端從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)后,通過所述JS接口收到所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)。所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中。
[0113]實(shí)施例十四:基于實(shí)施例十二的描述進(jìn)一步優(yōu)化的方案,所述客戶端包括擴(kuò)展的JS接口,針對(duì)服務(wù)器主動(dòng)推送數(shù)據(jù)情況而言,頁面引擎與后臺(tái)間采用所述C/S模式進(jìn)行數(shù)據(jù)傳輸,所述腳本執(zhí)行單元,進(jìn)一步用于采用所述客戶端/服務(wù)器模式與服務(wù)器通信,客戶端從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)后,通過瀏覽器的JS接口腳本被回調(diào)觸發(fā)從客戶端推送數(shù)據(jù)的處理,通過所述JS接口收到所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)。所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中。
[0114]實(shí)施例十五:基于實(shí)施例十二的描述、或結(jié)合實(shí)施例十三和十四進(jìn)一步優(yōu)化的方案,針對(duì)請(qǐng)求/應(yīng)答情況而言,頁面引擎與后臺(tái)間采用所述Β/S模式進(jìn)行數(shù)據(jù)傳輸,所述腳本執(zhí)行單元,進(jìn)一步用于調(diào)用根據(jù)腳本調(diào)用瀏覽器觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述瀏覽器/服務(wù)器模式與服務(wù)器通信,收到時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù)。所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中。
[0115]實(shí)施例十六:如圖12所示,數(shù)據(jù)處理系統(tǒng)包括:上述客戶端、頁面引擎和瀏覽器、及服務(wù)器,瀏覽器并未在圖12中體現(xiàn)。其中,服務(wù)器作為數(shù)據(jù)源,用于為客戶端提供數(shù)據(jù)、或?yàn)闉g覽器提供數(shù)據(jù);頁面引擎將從瀏覽器獲取的數(shù)據(jù)加載顯示在內(nèi)嵌頁面(瀏覽器視窗)中??蛻舳说木唧w細(xì)化如上述實(shí)施例描述的客戶端、頁面引擎的具體細(xì)化如上述實(shí)施例的頁面引擎,此處不做贅述。這里需要指出的是,圖12跳過了加載內(nèi)嵌頁面這個(gè)過程,是一個(gè)已經(jīng)通過頁面引擎加載了(或者部分加載)的內(nèi)嵌頁面與后臺(tái)服務(wù)器進(jìn)一步通信的數(shù)據(jù)處理系統(tǒng)示意圖。
[0116]本發(fā)明實(shí)施例集成的模塊如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。基于這樣的理解,本發(fā)明實(shí)施例的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī)、服務(wù)器、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分。而前述的存儲(chǔ)介質(zhì)包括:U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。這樣,本發(fā)明實(shí)施例不限制于任何特定的硬件和軟件結(jié)合。
[0117]相應(yīng)的,本發(fā)明實(shí)施例還提供一種計(jì)算機(jī)存儲(chǔ)介質(zhì),其中存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序用于執(zhí)行本發(fā)明實(shí)施例的數(shù)據(jù)處理方法。
[0118]以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種數(shù)據(jù)處理方法,其特征在于,該方法包括: 根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù); 對(duì)劃分后的數(shù)據(jù)選擇采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對(duì)劃分后的數(shù)據(jù)選擇采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸,至少包括以下任一種方式: 方式1:前端與后臺(tái)間數(shù)據(jù)交互為請(qǐng)求/應(yīng)答方式時(shí),對(duì)劃分為時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),采用所述客戶端/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸; 方式2:前端與后臺(tái)間數(shù)據(jù)交互為請(qǐng)求/應(yīng)答方式時(shí),對(duì)劃分為時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù),采用所述瀏覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸; 方式3:后臺(tái)向前端主動(dòng)推送數(shù)據(jù)方式時(shí),不區(qū)分?jǐn)?shù)據(jù)類型,采用所述客戶端/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸; 方式4:后臺(tái)向前端主動(dòng)推送數(shù)據(jù)方式時(shí),對(duì)劃分為時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),采用所述客戶端/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,該方法還包括:所述根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù)之前觸發(fā)加載頁面請(qǐng)求,將后臺(tái)根據(jù)所述加載頁面請(qǐng)求返回的數(shù)據(jù)顯示在內(nèi)嵌頁面中。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,瀏覽器加載顯示所述內(nèi)嵌頁面后,頁面引擎與后臺(tái)間采用客戶端/服務(wù)器模式、或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸; 所述瀏覽器包括擴(kuò)展的JS接口。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,頁面引擎與后臺(tái)間采用所述客戶端/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸,具體包括: 頁面引擎中的腳本通過調(diào)用瀏覽器的所述JS接口觸發(fā)從客戶端拉取數(shù)據(jù)的處理,之后觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,客戶端采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),客戶端通過所述JS接口將獲取的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)提供給頁面引擎并更新顯示在內(nèi)嵌頁面中; 或者,客戶端采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù),瀏覽器通過所述JS接口回調(diào)頁面引擎中的腳本觸發(fā)從客戶端推送數(shù)據(jù)的處理,客戶端通過所述JS接口將推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)提供給頁面引擎并更新顯示在內(nèi)嵌頁面中。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,頁面引擎與后臺(tái)間采用所述瀏覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸,具體包括: 頁面引擎中的腳本通過調(diào)用瀏覽器觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述瀏覽器/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù),提供給頁面引擎并更新顯示在內(nèi)嵌頁面中。
7.一種客戶端,其特征在于,所述客戶端包括: 擴(kuò)展接口,集成在所述客戶端上,用于獲取根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分后的數(shù)據(jù); 第一數(shù)據(jù)傳輸單元,用于采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸。
8.根據(jù)權(quán)利要求7所述的客戶端,其特征在于,所述擴(kuò)展接口為擴(kuò)展的JS接口; 所述擴(kuò)展的JS接口,進(jìn)一步用于被頁面引擎中的腳本調(diào)用后觸發(fā)從客戶端拉取數(shù)據(jù)的處理; 所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于觸發(fā)從客戶端拉取數(shù)據(jù)的處理之后,觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù); 或者, 所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于客戶端采用所述客戶端/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù); 所述擴(kuò)展的JS接口,進(jìn)一步用于通過回調(diào)頁面引擎中的腳本觸發(fā)從客戶端推送數(shù)據(jù)的處理。
9.根據(jù)權(quán)利要求7所述的客戶端,其特征在于,所述第一數(shù)據(jù)傳輸單元,進(jìn)一步用于觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理情況下,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述瀏覽器/服務(wù)器模式與服務(wù)器通信,從服務(wù)器獲取時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù)。
10.一種頁面引擎,其特征在于,所述頁面引擎包括: 腳本執(zhí)行單元,用于根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分?jǐn)?shù)據(jù)后,通過調(diào)用或被調(diào)用與集成在客戶端上的瀏覽器交互; 顯示單元,用于初始化時(shí)加載顯示內(nèi)嵌頁面;采用客戶端/服務(wù)器模式、和/或?yàn)g覽器/服務(wù)器模式進(jìn)行數(shù)據(jù)傳輸時(shí),獲取根據(jù)時(shí)間敏感度和/或數(shù)據(jù)量劃分后的數(shù)據(jù)對(duì)內(nèi)嵌頁面進(jìn)行更新顯示。
11.根據(jù)權(quán)利要求10所述的頁面引擎,其特征在于,所述腳本執(zhí)行單元,進(jìn)一步用于根據(jù)腳本調(diào)用瀏覽器的JS接口觸發(fā)從客戶端拉取數(shù)據(jù)的處理,之后觸發(fā)客戶端向服務(wù)器拉取數(shù)據(jù)的請(qǐng)求,采用所述客戶端/服務(wù)器模式與服務(wù)器通信,客戶端從服務(wù)器獲取服務(wù)器響應(yīng)的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)后,通過所述JS接口收到所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù); 所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中; 或者, 所述腳本執(zhí)行單元,進(jìn)一步用于采用所述客戶端/服務(wù)器模式與服務(wù)器通信,客戶端從服務(wù)器獲取服務(wù)器主動(dòng)推送的時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)后,通過瀏覽器的JS接口腳本被回調(diào)觸發(fā)從客戶端推送數(shù)據(jù)的處理,通過所述JS接口收到所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù); 所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度高和/或數(shù)據(jù)量小的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中。
12.根據(jù)權(quán)利要求10所述的頁面引擎,其特征在于,所述腳本執(zhí)行單元,進(jìn)一步用于調(diào)用根據(jù)腳本調(diào)用瀏覽器觸發(fā)從服務(wù)器直接拉取數(shù)據(jù)的處理,發(fā)起異步拉取數(shù)據(jù)的請(qǐng)求后采用所述瀏覽器/服務(wù)器模式與服務(wù)器通信,收到時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù); 所述顯示單元,進(jìn)一步用于將所述時(shí)間敏感度低和/或數(shù)據(jù)量大的數(shù)據(jù)更新顯示在內(nèi)嵌頁面中。
13.一種數(shù)據(jù)處理系統(tǒng),其特征在于,該系統(tǒng)包括:服務(wù)器、瀏覽器、如權(quán)利要求7-9任一項(xiàng)所述的客戶端、及如權(quán)利要求10-12任一項(xiàng)所述的頁面引擎;其中,所述服務(wù)器作為數(shù)據(jù)源,用于為客戶端提供數(shù)據(jù)、或?yàn)闉g覽器提供數(shù)據(jù);頁面引擎將從瀏覽器獲取的數(shù)據(jù)加載顯示在內(nèi)嵌頁面中。
【文檔編號(hào)】H04L12/58GK104253788SQ201310259828
【公開日】2014年12月31日 申請(qǐng)日期:2013年6月26日 優(yōu)先權(quán)日:2013年6月26日
【發(fā)明者】何一舟, 夏檳 申請(qǐng)人:騰訊科技(深圳)有限公司