欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

提供及替換網(wǎng)頁(yè)中數(shù)據(jù)的方法、裝置及系統(tǒng)的制作方法

文檔序號(hào):4115156閱讀:238來(lái)源:國(guó)知局
專利名稱:提供及替換網(wǎng)頁(yè)中數(shù)據(jù)的方法、裝置及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及互聯(lián)網(wǎng)領(lǐng)域,特別是涉及提供及替換網(wǎng)頁(yè)中數(shù)據(jù)的方法、裝置及系統(tǒng)。

背景技術(shù)
在web網(wǎng)頁(yè)開發(fā)技術(shù)中,常采用模板替換技術(shù)以方便進(jìn)行網(wǎng)頁(yè)中的數(shù)據(jù)更新,模板替換為基于預(yù)先定義某種規(guī)則的一組固定的頁(yè)面格式,由不同的導(dǎo)入數(shù)據(jù)而對(duì)固定標(biāo)記進(jìn)行替換為固定數(shù)據(jù)節(jié)點(diǎn)的一種操作。
現(xiàn)有的網(wǎng)頁(yè)模板替換通?;趚ml(Extensible Markup Language,也即可擴(kuò)展標(biāo)記語(yǔ)言,是一種數(shù)據(jù)存儲(chǔ)語(yǔ)言,其使用簡(jiǎn)單的標(biāo)記描述數(shù)據(jù))技術(shù),即服務(wù)器收到客戶端的數(shù)據(jù)訪問請(qǐng)求后,直接返回xml格式的數(shù)據(jù),客戶端根據(jù)一些預(yù)設(shè)的框架(如ajax框架)進(jìn)行解析與替換操作。
但是這種方案存在以下問題 1、xml跨域問題。由于xml自身安全策略的設(shè)定,單純xml無(wú)法進(jìn)行跨域名操作,需要一個(gè)橋接頁(yè)面(中轉(zhuǎn)頁(yè)面)來(lái)傳送數(shù)據(jù),這樣增加了服務(wù)器的開銷。
2、xml數(shù)據(jù)冗余。由于xml格式的設(shè)定要求,每一個(gè)節(jié)點(diǎn)都需要標(biāo)記名稱,因此有大量的冗余字節(jié)。
例如<?xml version=″1.0″e(cuò)ncoding=″gb2312″?><categories uin=″www″category buy=″0″><category id=″409″category_type=″0″res_num=″2″added_res_num=″0″ comment_num=″0″flower_num=″24000″e(cuò)gg_num=″0″show_status=″1″ last_time=″2007-07-13 10:38:35″> <category_name><![CDATA[私有專輯]]></category_name> <tags tag_num=″0″> <![CDATA[&nbsp;]]> </tags> 其中<?xml version=″1.0″e(cuò)ncoding=″gb2312″?>、categories、tags節(jié)點(diǎn)名稱多次重復(fù),浪費(fèi)了有效數(shù)據(jù)的字節(jié)數(shù)。
3、各種ajax框架包文件量大。由于xml這種通用的格式設(shè)定,伴隨而出了多種應(yīng)用框架開發(fā)包,如Dojo、Prototype、jQuery,其文件量少則20K,多則60K。所述開發(fā)包中的很多功能并不會(huì)被服務(wù)器使用,但還是被服務(wù)器加載,這樣就會(huì)造成服務(wù)器資源(如帶寬、處理等)的浪費(fèi)。
綜上,現(xiàn)有采用xml技術(shù)進(jìn)行網(wǎng)頁(yè)模板替換的方案存在跨域、數(shù)據(jù)冗余,以及數(shù)據(jù)包文件量大等問題。


發(fā)明內(nèi)容
本發(fā)明實(shí)施例涉及了提供及替換網(wǎng)頁(yè)中數(shù)據(jù)的方法、裝置及系統(tǒng),以解決現(xiàn)有采用xml技術(shù)進(jìn)行網(wǎng)頁(yè)模板替換的方案存在跨域、數(shù)據(jù)冗余,以及數(shù)據(jù)包文件量大等問題。
本發(fā)明實(shí)施例的一種提供待替換數(shù)據(jù)的方法,包括下列步驟服務(wù)器收到客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息;服務(wù)器向客戶端提供JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
本發(fā)明實(shí)施例的一種替換網(wǎng)頁(yè)中數(shù)據(jù)的方法,包括下列步驟客戶端收到服務(wù)器提供的JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí);客戶端獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí);客戶端以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配;客戶端以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
本發(fā)明實(shí)施例的一種服務(wù)器,包括請(qǐng)求接收單元,用于接收客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息;數(shù)據(jù)頁(yè)提供單元,用于向客戶端提供JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
本發(fā)明實(shí)施例的一種客戶端,包括數(shù)據(jù)頁(yè)接收單元,用于接收服務(wù)器提供的JSON數(shù)據(jù)頁(yè);獲取單元,用于獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí);匹配單元,用于以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配;替換單元,用于以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
本發(fā)明實(shí)施例的一種提供及替換網(wǎng)頁(yè)中數(shù)據(jù)的系統(tǒng),包括客戶端和服務(wù)器;客戶端,用于向服務(wù)器發(fā)送網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,并接收服務(wù)器提供的JSON數(shù)據(jù)頁(yè),以及獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí),以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配,并以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù);服務(wù)器,用于接收客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,并向客戶端提供JSON數(shù)據(jù)頁(yè),JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
本發(fā)明基于JSON技術(shù),將前端開發(fā)與后臺(tái)開發(fā)相互分離。
從服務(wù)器側(cè)看,相對(duì)xml格式更簡(jiǎn)潔,冗余數(shù)據(jù)少;有數(shù)據(jù)輕量化,無(wú)跨域問題,數(shù)據(jù)通用性好,解析速度快,跨瀏覽器兼容性好等優(yōu)點(diǎn)。
從客戶端側(cè)看,根據(jù)業(yè)務(wù)邏輯編寫模版替換腳本程序的開發(fā)量相對(duì)于xml技術(shù)較小,并且具有標(biāo)準(zhǔn)化,模版化,自動(dòng)化,通用化,執(zhí)行效率高等優(yōu)點(diǎn)。



圖1為本發(fā)明實(shí)施例的一種提供待替換數(shù)據(jù)的方法步驟流程圖; 圖2為本發(fā)明實(shí)施例的一種替換網(wǎng)頁(yè)中數(shù)據(jù)的方法步驟流程圖; 圖3為本發(fā)明的服務(wù)器實(shí)施例1的結(jié)構(gòu)示意圖; 圖4為本發(fā)明的服務(wù)器實(shí)施例2的結(jié)構(gòu)示意圖; 圖5為本發(fā)明的服務(wù)器實(shí)施例3的結(jié)構(gòu)示意圖; 圖6為本發(fā)明的客戶端實(shí)施例1的結(jié)構(gòu)示意圖。

具體實(shí)施例方式 為了解決現(xiàn)有采用xml技術(shù)進(jìn)行網(wǎng)頁(yè)模板替換的方案存在跨域、數(shù)據(jù)冗余,以及數(shù)據(jù)包文件量大等問題,因此發(fā)明人提出基于JSON技術(shù),將前端(客戶端)開發(fā)與后臺(tái)(服務(wù)器端)開發(fā)相互分離的方案進(jìn)行web開發(fā)。
JSON(Javascript Object Notation)JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,其易于人閱讀和編寫,同時(shí)也易于機(jī)器解析和生成。它基于JavascriptProgramming Language,Standard ECMA-262 3rd Edition-December 1999的一個(gè)子集。JSON采用完全獨(dú)立于語(yǔ)言的文本格式,但是也使用了類似于C語(yǔ)言家族的習(xí)慣(包括C,C++,C#,Java,Javascript,Perl,Python等)。這些特性使JSON成為web開發(fā)中理想的數(shù)據(jù)交換語(yǔ)言,它能使JavaScript輕松的讀取復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。JSON概念簡(jiǎn)單,即服務(wù)器直接將客戶端所請(qǐng)求的數(shù)據(jù)對(duì)象生成Javascript語(yǔ)句,并向客戶端發(fā)送,客戶端獲取后,直接用eval方法來(lái)獲得該數(shù)據(jù)對(duì)象,較之于采用XML方式,這樣可省去客戶端用于解析XML的性能損失。
以下分別描述本發(fā)明的方法、裝置及系統(tǒng)。
基于上述前端開發(fā)與后臺(tái)開發(fā)相互分離的思路,本發(fā)明實(shí)施例提出了一種提供待替換數(shù)據(jù)的方法,參見圖1所示,包括下列主要步驟 S11、服務(wù)器收到客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息。
S12、服務(wù)器向客戶端提供JSON數(shù)據(jù)頁(yè)。
以下通過兩個(gè)實(shí)施例進(jìn)一步詳述提供待替換數(shù)據(jù)的方法。
方法實(shí)施例1、服務(wù)器向客戶端提供對(duì)應(yīng)的靜態(tài)的JSON數(shù)據(jù)頁(yè),包括下列步驟 100、服務(wù)器定期查詢數(shù)據(jù)庫(kù),更新生成靜態(tài)的JSON數(shù)據(jù)頁(yè)。
該數(shù)據(jù)庫(kù)根據(jù)需求把網(wǎng)頁(yè)中需要替換的數(shù)據(jù)匯集在一起,即存儲(chǔ)了網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值,例如一個(gè)網(wǎng)絡(luò)論壇中各用戶的基本信息及所發(fā)表言論等。
可通過服務(wù)器的cgi(Common Gateway Interface)程序更新生成靜態(tài)JSON數(shù)據(jù)頁(yè),JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。靜態(tài)JSON數(shù)據(jù)頁(yè)可以html頁(yè)作為JSON格式數(shù)據(jù)的載體,將JSON格式的數(shù)據(jù)對(duì)象攜帶于html頁(yè)的html標(biāo)記中。
進(jìn)一步為了對(duì)靜態(tài)JSON數(shù)據(jù)頁(yè)中的JSON格式數(shù)據(jù)進(jìn)行保護(hù),還可對(duì)JSON格式的數(shù)據(jù)設(shè)置域(domain)信息。
以下為一個(gè)靜態(tài)JSON數(shù)據(jù)頁(yè)的實(shí)例 <HTML><HEAD><META http-equiv=Content-Type content=″text/html; charset=gb2312″> <script> document.domain=″gougou.com″; varjsonObj={cid″00E02CC2A96542492075A0473C67F0F16922896C″,totalCmtNum442,orderby1,speed_mark_cnt_070,speed_mark_cnt_173,speed_mark_cnt_2133,quality_mark_cnt_06079,quality_mark_cnt_1241,quality_mark_cnt_2387,comment[ {id219,commenter″zhangzhenhua20″,title″相當(dāng)不錯(cuò) ″,content″相當(dāng)不錯(cuò)的版本″,time″2007-07-15 16:10:37″,rplNum1, usableNum28,unusableNum14, userInfo{validtrue,level9,rank″大?!澹琻ick_name″你好″},blog{validtrue, pic″http//t11.blogimg.xunlei.com/107/60/zhangzhenhua20/0.gif″}, reply[ {replyer″okokmail″,content″求助″,time″2007-08-10 18:25:29″}, {}] } 其中,document.domain=″gougou.com″的設(shè)定,在非gougou.com域下加載就會(huì)引起瀏覽器腳本錯(cuò)誤。如此可以進(jìn)行一定程度的數(shù)據(jù)保護(hù)。
另外由于xml數(shù)據(jù)每個(gè)節(jié)點(diǎn)值都需要列出節(jié)點(diǎn)名,而且節(jié)點(diǎn)結(jié)束還需要再列出節(jié)點(diǎn)名,這樣當(dāng)節(jié)點(diǎn)值比較多時(shí)就會(huì)有很多冗余字節(jié)。而本發(fā)明基于JSON技術(shù),相對(duì)xml格式更簡(jiǎn)潔,冗余數(shù)據(jù)少;有數(shù)據(jù)輕量化,無(wú)跨域問題,數(shù)據(jù)通用性好,解析速度快,跨瀏覽器兼容性好等優(yōu)點(diǎn)。而且對(duì)于開發(fā)人員可讀性比較清晰。
101、客戶端判定需要替換網(wǎng)頁(yè)中的數(shù)據(jù)時(shí),通過iframe等手段向服務(wù)器發(fā)送網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息。
102、服務(wù)器向客戶端提供相應(yīng)的靜態(tài)JSON數(shù)據(jù)頁(yè)。
由于本實(shí)施例中服務(wù)器預(yù)先已生成了全部或部分靜態(tài)JSON數(shù)據(jù)頁(yè),所以服務(wù)器收到客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息后,依據(jù)網(wǎng)頁(yè)與靜態(tài)JSON數(shù)據(jù)頁(yè)的對(duì)應(yīng)關(guān)系,直接從本地(即該服務(wù)器)保存的靜態(tài)JSON數(shù)據(jù)頁(yè)中查找對(duì)應(yīng)的靜態(tài)JSON數(shù)據(jù)頁(yè),并向客戶端提供查找到的靜態(tài)JSON數(shù)據(jù)頁(yè),而無(wú)需再去查詢數(shù)據(jù)庫(kù),這樣就節(jié)省了響應(yīng)時(shí)間,從而給用戶帶來(lái)更好的體驗(yàn)。所述對(duì)應(yīng)關(guān)系可預(yù)先在開發(fā)時(shí)約定,例如通過網(wǎng)頁(yè)的URL地址,或所述靜態(tài)JSON數(shù)據(jù)頁(yè)的文件標(biāo)識(shí)等將網(wǎng)頁(yè)與靜態(tài)JSON數(shù)據(jù)頁(yè)關(guān)聯(lián)起來(lái),則客戶端發(fā)送的所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息中包含需要訪問網(wǎng)頁(yè)的URL地址或所需獲取的靜態(tài)JSON數(shù)據(jù)頁(yè)的文件標(biāo)識(shí),服務(wù)器通過根據(jù)所述對(duì)應(yīng)關(guān)系查找對(duì)應(yīng)的靜態(tài)JSON數(shù)據(jù)頁(yè)。
方法實(shí)施例2、服務(wù)器即時(shí)生成并向客戶端提供JSON數(shù)據(jù)頁(yè),包括下列步驟 201、客戶端判定需要替換網(wǎng)頁(yè)中的數(shù)據(jù)時(shí),通過iframe等手段向服務(wù)器發(fā)送網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息。
202、服務(wù)器即時(shí)生成并向客戶端提供JSON數(shù)據(jù)頁(yè)。
服務(wù)器根據(jù)所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,通過服務(wù)器的cgi程序從所述數(shù)據(jù)庫(kù)中實(shí)時(shí)更新生成JSON數(shù)據(jù)頁(yè),可以html作為JSON格式數(shù)據(jù)頁(yè)的載體,將JSON格式的數(shù)據(jù)對(duì)象攜帶于html頁(yè)的html標(biāo)記中。進(jìn)一步為了對(duì)JSON數(shù)據(jù)頁(yè)中的JSON格式數(shù)據(jù)進(jìn)行保護(hù),還可對(duì)JSON格式的數(shù)據(jù)設(shè)置域(domain)信息。之后,服務(wù)器將生成的JSON數(shù)據(jù)頁(yè)提供給客戶端。
至此,本發(fā)明的提供待替換數(shù)據(jù)的方法描述完畢,以下描述本發(fā)明的替換網(wǎng)頁(yè)中數(shù)據(jù)的方法。
基于上述前端開發(fā)與后臺(tái)開發(fā)相互分離的思路,并與上述提供待替換數(shù)據(jù)的方法相應(yīng),本發(fā)明實(shí)施例還提出了一種替換網(wǎng)頁(yè)中數(shù)據(jù)的方法,參見圖2所示,包括下列主要步驟 S21、客戶端收到服務(wù)器提供的JSON數(shù)據(jù)頁(yè)。
S22、客戶端獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)。
S23、客戶端以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配。
S24、客戶端以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
以下通過一實(shí)施例進(jìn)一步詳述替換網(wǎng)頁(yè)中數(shù)據(jù)的方法,并且該實(shí)施例可與上述方法實(shí)施1或方法實(shí)施2接續(xù)。
方法實(shí)施3、客戶端收到服務(wù)器提供的JSON數(shù)據(jù)頁(yè)后,完成數(shù)據(jù)替換。
301、客戶端收到服務(wù)器提供的JSON數(shù)據(jù)頁(yè)。
302、客戶端加載待替換數(shù)據(jù)的網(wǎng)頁(yè),并從中獲取該網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)。
303、客戶端采用第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配。常用的方法為采用正則表達(dá)式進(jìn)行匹配。正則表達(dá)式是進(jìn)行文本匹配的工具,可在給定的字符串中,尋找與給定的正則表達(dá)式相匹配的部分。
304、客戶端以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
上述步驟301至304在具體實(shí)現(xiàn)中可通過腳本程序?qū)崿F(xiàn)。當(dāng)待替換數(shù)據(jù)的網(wǎng)頁(yè)加載到html最后一行代碼啟動(dòng)腳本程序后,腳本程序?qū)⒆詣?dòng)創(chuàng)建一個(gè)iframe去加載JSON數(shù)據(jù)頁(yè)。同時(shí)去該網(wǎng)頁(yè)中獲取需要替換的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí),然后遞歸對(duì)所需要替換的數(shù)據(jù)進(jìn)行替換。
305、根據(jù)替換后的數(shù)據(jù),生成html代碼,并送回網(wǎng)頁(yè)進(jìn)行顯示。
以下為待替換數(shù)據(jù)的網(wǎng)頁(yè)的相關(guān)說(shuō)明,以及數(shù)據(jù)替換實(shí)例 1、網(wǎng)頁(yè)頁(yè)面所要替換的部分運(yùn)用html標(biāo)簽(div、span等)來(lái)封裝。
2、在所替換數(shù)據(jù)的開頭和結(jié)尾可用<%repeat_0 match=″xxx″%>及<%_repeat_0%>標(biāo)記。其中xxx為所要替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)記。
3、其中在“[]”中的例如[%=id%]、[%=content@pf=″showContent(str)″%]等(參見下文中代碼片段),為需要替換的節(jié)點(diǎn)值(節(jié)點(diǎn)值標(biāo)記該節(jié)點(diǎn)的值,也就是對(duì)象的鍵值,這個(gè)值是根據(jù)數(shù)據(jù)庫(kù)中對(duì)應(yīng)表里對(duì)應(yīng)字段的某一個(gè)值,具體根據(jù)業(yè)務(wù)邏輯查數(shù)據(jù)庫(kù));@pf=″showContent(str)為對(duì)節(jié)點(diǎn)值進(jìn)行預(yù)處理函數(shù)的寫法,其會(huì)將替換出來(lái)的值先導(dǎo)入到showContent(str)這個(gè)函數(shù)中按需求處理后再顯示。
代碼片段如下 <div class=″plinfo″> <%repeat_0 match=″jsonobj.comment″%> [%=commenter@pf=″showCmtBlogUinTemp(str)″%] <dl> <dt><span><divstyle=″displaynone″>[%=id%]</div><a href=″javascript;″onclick=″addComment(this,1)″>支持 </a><em>[%=usableNum%]</em>&nbsp;<a href=″javascript;″ onclick=″addComment(this,0)″>反對(duì)</a><em>[%=unusableNum%]</em>&nbsp; <a alt=″點(diǎn)擊回復(fù)本評(píng)論″href=″[%=id@pf=&quot;getReplyHref(str)&quot;%]″ target=_blank>回復(fù) </a><em>[%=rplNum%]</em></span>[%=userInfo@pf=″showCmtNick(str)″%]& nbsp;<em>發(fā)表于[%=time%]</em></dt> <dd>[%=content@pf=″showContent(str)″%]</dd></dl><%_repeat_0%></div><div class=″page″id=″plBar_div″><%repeat_0 match=″jsonobj″%><span id=″turn_div″></span>共<em>[%=totalCmtNum@pf=″setTotalNum(str)″%]</em>,顯示 <em id=″pageDisplayInfo″></em> <%_repeat_0%> </div> </div> 注代碼片段中的“[]”中的內(nèi)容為需要替換的節(jié)點(diǎn)值,“[]”還可為“<>”、“<!-- -->”所替換,可根據(jù)用戶設(shè)定的開發(fā)環(huán)境,當(dāng)某一種標(biāo)記格式被其他功能占用時(shí),選擇另一種標(biāo)記格式。
由于本發(fā)明基于JSON技術(shù),所以客戶端根據(jù)業(yè)務(wù)邏輯,編寫模版替換腳本程序的開發(fā)量相對(duì)于xml技術(shù)較小(xml需要額外的JavaScript代碼進(jìn)行分析以顯示結(jié)果)。模板替換腳本程序可用javascript編寫類似ajax的異步讀取數(shù)據(jù),并進(jìn)行數(shù)據(jù)自動(dòng)化模板替換的程序類(類似cgi程序)。其優(yōu)點(diǎn)在于標(biāo)準(zhǔn)化,模版化,自動(dòng)化,通用化,其負(fù)責(zé)相關(guān)數(shù)據(jù)的抽取與替換,使客戶端執(zhí)行效率高。
至此,本發(fā)明的替換網(wǎng)頁(yè)中數(shù)據(jù)的方法描述完畢,以下通過3個(gè)實(shí)施例描述本發(fā)明的服務(wù)器1。
服務(wù)器實(shí)施例1、參見圖3所示,其包括請(qǐng)求接收單元11和數(shù)據(jù)頁(yè)提供單元12。
請(qǐng)求接收單元11,用于接收客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息。
數(shù)據(jù)頁(yè)提供單元12,用于向客戶端提供JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
服務(wù)器實(shí)施例2、參見圖4所示,其包括請(qǐng)求接收單元11、第一查詢單元13、第一生成單元14、保存單元15、查找單元16,以及數(shù)據(jù)頁(yè)提供單元12。
請(qǐng)求接收單元11,用于接收客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息。
第一查詢單元13,用于定期查詢數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)存儲(chǔ)了網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值。
第一生成單元14,用于根據(jù)第一查詢單元13的查詢結(jié)果,更新生成靜態(tài)的JSON數(shù)據(jù)頁(yè)。
保存單元15,用于保存第一生成單元14更新生成的JSON數(shù)據(jù)頁(yè)。
查找單元16,用于根據(jù)所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,從保存單元15中查找對(duì)應(yīng)的JSON數(shù)據(jù)頁(yè),并傳送給數(shù)據(jù)頁(yè)提供單元12。
數(shù)據(jù)頁(yè)提供單元12,用于向客戶端提供JSON數(shù)據(jù)頁(yè)。
服務(wù)器實(shí)施例3、參見圖5所示,其包括請(qǐng)求接收單元11、第二查詢單元17、第二生成單元18和數(shù)據(jù)頁(yè)提供單元12。
請(qǐng)求接收單元11,用于接收客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息。
第二查詢單元17,用于根據(jù)所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息查詢數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)存儲(chǔ)了網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值。
第二生成單元18,用于根據(jù)第二查詢單元17的查詢結(jié)果,生成JSON數(shù)據(jù)頁(yè),并將生成的JSON數(shù)據(jù)頁(yè)傳送給數(shù)據(jù)頁(yè)提供單元12。
數(shù)據(jù)頁(yè)提供單元12,用于向客戶端提供JSON數(shù)據(jù)頁(yè)。
至此,本發(fā)明的服務(wù)器1描述完畢,以下通過1個(gè)實(shí)施例描述本發(fā)明的客戶端2。
客戶端實(shí)施例1、參見圖6所示,其包括數(shù)據(jù)頁(yè)接收單元21、獲取單元22、匹配單元23和替換單元24。
數(shù)據(jù)頁(yè)接收單元21,用于接收服務(wù)器提供的JSON數(shù)據(jù)頁(yè)。
獲取單元22,用于獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)。
匹配單元23,用于以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配。
替換單元24,用于以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
至此,本發(fā)明的客戶端2描述完畢,以下通過3個(gè)實(shí)施例描述本發(fā)明的系統(tǒng)。
系統(tǒng)實(shí)施例1、包括客戶端和服務(wù)器。
客戶端,用于向服務(wù)器發(fā)送網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,并接收服務(wù)器提供的JSON數(shù)據(jù)頁(yè),以及獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí),以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配,并以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
服務(wù)器,用于接收客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,并向客戶端提供JSON數(shù)據(jù)頁(yè),JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
系統(tǒng)實(shí)施例2、包括客戶端、服務(wù)器和數(shù)據(jù)庫(kù)。
數(shù)據(jù)庫(kù),用于存儲(chǔ)網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值。
服務(wù)器,用于定期查詢數(shù)據(jù)庫(kù),根據(jù)查詢結(jié)果,更新生成靜態(tài)的JSON數(shù)據(jù)頁(yè)。
客戶端,用于向服務(wù)器發(fā)送網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,并接收服務(wù)器提供的JSON數(shù)據(jù)頁(yè),以及獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí),以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配,并以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
該服務(wù)器在收到客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息后,從該服務(wù)器中查找對(duì)應(yīng)的JSON數(shù)據(jù)頁(yè),并向客戶端提供查找到的JSON數(shù)據(jù)頁(yè),JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
系統(tǒng)實(shí)施例3、包括客戶端、服務(wù)器和數(shù)據(jù)庫(kù)。
數(shù)據(jù)庫(kù),用于存儲(chǔ)網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值。
客戶端,用于向服務(wù)器發(fā)送網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,并接收服務(wù)器提供的JSON數(shù)據(jù)頁(yè),以及獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí),以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配,并以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
服務(wù)器,用于根據(jù)所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息查詢數(shù)據(jù)庫(kù),并根據(jù)查詢結(jié)果生成JSON數(shù)據(jù)頁(yè),提供給客戶端。
綜上,本發(fā)明基于JSON技術(shù),將前端開發(fā)與后臺(tái)開發(fā)相互分離。
從服務(wù)器側(cè)看,相對(duì)xml格式更簡(jiǎn)潔,冗余數(shù)據(jù)少;有數(shù)據(jù)輕量化,無(wú)跨域問題,數(shù)據(jù)通用性好,解析速度快,跨瀏覽器兼容性好等優(yōu)點(diǎn);而且對(duì)于開發(fā)人員可讀性比較清晰;并且可降低耦合,提高效率。進(jìn)一步若對(duì)JSON數(shù)據(jù)頁(yè)中的JSON格式的數(shù)據(jù)進(jìn)行域設(shè)置,還可達(dá)到一定程度的數(shù)據(jù)保護(hù)。
從客戶端側(cè)看,根據(jù)業(yè)務(wù)邏輯編寫模版替換腳本程序的開發(fā)量相對(duì)于xml技術(shù)較小,并且具有標(biāo)準(zhǔn)化,模版化,自動(dòng)化,通用化,執(zhí)行效率高等優(yōu)點(diǎn)。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1.一種提供待替換數(shù)據(jù)的方法,其特征在于,包括下列步驟
服務(wù)器收到客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息;
服務(wù)器向客戶端提供JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
2.如權(quán)利要求1所述的方法,其特征在于,還包括
服務(wù)器定期查詢數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)存儲(chǔ)了網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值;
服務(wù)器根據(jù)查詢結(jié)果,更新生成JSON數(shù)據(jù)頁(yè)。
3.如權(quán)利要求2所述的方法,其特征在于,服務(wù)器向客戶端提供JSON數(shù)據(jù)頁(yè)包括下列步驟
服務(wù)器根據(jù)所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,從該服務(wù)器中查找對(duì)應(yīng)的JSON數(shù)據(jù)頁(yè),并向客戶端提供查找到的JSON數(shù)據(jù)頁(yè)。
4.如權(quán)利要求1所述的方法,其特征在于,還包括
服務(wù)器收到客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息后,查詢數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)存儲(chǔ)了網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值;
服務(wù)器根據(jù)查詢結(jié)果,生成JSON數(shù)據(jù)頁(yè)。
5.如權(quán)利要求1所述的方法,其特征在于,所述JSON數(shù)據(jù)頁(yè)以html為載體,則將JSON格式的數(shù)據(jù)對(duì)象攜帶于html頁(yè)的html標(biāo)記中。
6.如權(quán)利要求1所述的方法,其特征在于,服務(wù)器在向客戶端提供JSON數(shù)據(jù)頁(yè)之前,為該JSON數(shù)據(jù)頁(yè)中包含的JSON格式的數(shù)據(jù)設(shè)置域信息。
7.一種替換網(wǎng)頁(yè)中數(shù)據(jù)的方法,其特征在于,包括下列步驟
客戶端收到服務(wù)器提供的JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí);
客戶端獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí);
客戶端以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配;
客戶端以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
8.如權(quán)利要求7所述的方法,其特征在于
客戶端采用正則表達(dá)式,將第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配。
9.如權(quán)利要求7所述的方法,其特征在于,客戶端完成替換操作后,還包括步驟
客戶端生成所需的html代碼,并送回所述網(wǎng)頁(yè)的頁(yè)面進(jìn)行顯示。
10.一種服務(wù)器,其特征在于,包括
請(qǐng)求接收單元,用于接收客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息;
數(shù)據(jù)頁(yè)提供單元,用于向客戶端提供JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
11.如權(quán)利要求10所述的服務(wù)器,其特征在于,所述服務(wù)器中還包括
第一查詢單元,用于定期查詢數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)存儲(chǔ)了網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值;
第一生成單元,用于根據(jù)第一查詢單元的查詢結(jié)果,更新生成靜態(tài)的JSON數(shù)據(jù)頁(yè);
保存單元,用于保存第一生成單元更新生成的JSON數(shù)據(jù)頁(yè)。
12.如權(quán)利要求11所述的服務(wù)器,其特征在于,所述服務(wù)器中還包括
查找單元,用于根據(jù)所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,從保存單元中查找對(duì)應(yīng)的JSON數(shù)據(jù)頁(yè),并傳送給數(shù)據(jù)頁(yè)提供單元。
13.如權(quán)利要求10所述的服務(wù)器,其特征在于,所述服務(wù)器中還包括
第二查詢單元,用于根據(jù)所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息查詢數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)存儲(chǔ)了網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值;
第二生成單元,用于根據(jù)第二查詢單元的查詢結(jié)果,生成JSON數(shù)據(jù)頁(yè),并將生成的JSON數(shù)據(jù)頁(yè)傳送給數(shù)據(jù)頁(yè)提供單元。
14.一種客戶端,其特征在于,包括
數(shù)據(jù)頁(yè)接收單元,用于接收服務(wù)器提供的JSON數(shù)據(jù)頁(yè);
獲取單元,用于獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí);
匹配單元,用于以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配;
替換單元,用于以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
15.一種提供及替換網(wǎng)頁(yè)中數(shù)據(jù)的系統(tǒng),其特征在于,包括客戶端和服務(wù)器;
客戶端,用于向服務(wù)器發(fā)送網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,并接收服務(wù)器提供的JSON數(shù)據(jù)頁(yè),以及獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí),以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配,并以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù);
服務(wù)器,用于接收客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,并向客戶端提供JSON數(shù)據(jù)頁(yè),JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。
16.如權(quán)利要求15所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括
數(shù)據(jù)庫(kù),用于存儲(chǔ)網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值;
服務(wù)器定期查詢?cè)摂?shù)據(jù)庫(kù),并根據(jù)查詢結(jié)果,更新生成JSON數(shù)據(jù)頁(yè)。
17.如權(quán)利要求16所述的系統(tǒng),其特征在于,所述服務(wù)器根據(jù)所述網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息,從該服務(wù)器中查找對(duì)應(yīng)的JSON數(shù)據(jù)頁(yè),并向客戶端提供查找到的JSON數(shù)據(jù)頁(yè)。
18.如權(quán)利要求15所述的系統(tǒng),其特征在于
服務(wù)器收到客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息后,查詢數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)存儲(chǔ)了網(wǎng)頁(yè)中需要替換的數(shù)據(jù)值;
服務(wù)器根據(jù)查詢結(jié)果,生成JSON數(shù)據(jù)頁(yè)。
全文摘要
本發(fā)明公開了互聯(lián)網(wǎng)領(lǐng)域的提供及替換網(wǎng)頁(yè)中數(shù)據(jù)的方法、裝置及系統(tǒng),以解決現(xiàn)有采用xml技術(shù)進(jìn)行網(wǎng)頁(yè)模板替換的方案存在跨域、數(shù)據(jù)冗余,以及數(shù)據(jù)包文件量大等問題。提供待替換數(shù)據(jù)的方法包括服務(wù)器收到客戶端發(fā)來(lái)的網(wǎng)頁(yè)數(shù)據(jù)替換請(qǐng)求消息;服務(wù)器向客戶端提供JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí)。替換網(wǎng)頁(yè)中數(shù)據(jù)的方法包括客戶端收到服務(wù)器提供的JSON數(shù)據(jù)頁(yè),該JSON數(shù)據(jù)頁(yè)中包含數(shù)據(jù)節(jié)點(diǎn)的標(biāo)識(shí);客戶端獲取網(wǎng)頁(yè)中第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí);客戶端以第一待替換數(shù)據(jù)對(duì)應(yīng)的節(jié)點(diǎn)標(biāo)識(shí)與JSON數(shù)據(jù)頁(yè)中包含的數(shù)據(jù)節(jié)點(diǎn)標(biāo)識(shí)進(jìn)行匹配;客戶端以匹配得到的節(jié)點(diǎn)標(biāo)識(shí)對(duì)應(yīng)的JSON格式的數(shù)據(jù)替換第一待替換數(shù)據(jù)。
文檔編號(hào)H04L12/58GK101217507SQ20071030784
公開日2008年7月9日 申請(qǐng)日期2007年12月29日 優(yōu)先權(quán)日2007年12月29日
發(fā)明者丁 馬 申請(qǐng)人:深圳市迅雷網(wǎng)絡(luò)技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
思茅市| 类乌齐县| 登封市| 昭通市| 湾仔区| 平武县| 思南县| 保靖县| 金华市| 迁西县| 宜兴市| 德化县| 上犹县| 五大连池市| 抚松县| 泗水县| 阿拉善右旗| 德江县| 饶河县| 吴江市| 常熟市| 河池市| 柘荣县| 台东县| 深圳市| 黄大仙区| 尚志市| 金门县| 靖江市| 富锦市| 蓝山县| 开江县| 马公市| 六枝特区| 紫云| 新乡县| 曲周县| 南召县| 洛川县| 蕲春县| 台江县|