胥杜鵑
九江學院信息與科學技術(shù)學院,江西九江 332005
基于Web2.0的RSS技術(shù)分析與應(yīng)用
胥杜鵑
九江學院信息與科學技術(shù)學院,江西九江 332005
本文系統(tǒng)論述了基于Web2.0的RSS技術(shù)的基本原理。在此基礎(chǔ)上,對RSS技術(shù)在Web2.0站點實際開發(fā)的應(yīng)用技術(shù)進行了分析和探討。提出了一種運用RSS技術(shù)來構(gòu)建基于Web2.0站點的方法。
Web2.0;RSS;XML標準;RSS閱讀器
RSS(Really Simple Syndication),是一種描述和同步網(wǎng)站內(nèi)容的格式,用于共享新聞標題和其他Web內(nèi)容的XML格式標準,即一種用于發(fā)布和獲取網(wǎng)絡(luò)內(nèi)容(例如最新新聞)的XML格式,常被用于新聞和其它按順序排列的網(wǎng)站,例如博客(Blog)、維基(Wiki)等。
一個新聞?wù)军c,如果希望用戶能及時了解其站點內(nèi)容更新的新聞,那么就必須創(chuàng)建一個XML標準的RSS提要文件,將最新的新聞內(nèi)容匯集起來。然后將匯集的最新新聞以XML格式輸出生成一個RSS[1]。用戶想訪問相應(yīng)站點最新新聞時,只要安裝一個RSS閱讀器來訪問站點提供的RSS URL即可。站點內(nèi)容更新后,用戶能在不打開站點的情況下,及時獲得站點的最新新聞。
目前,多數(shù)站點是在不改變動態(tài)web站點源程序的情況下,增加新asp文件,從新聞內(nèi)容相關(guān)的數(shù)據(jù)庫中讀取最新幾篇文章,直接以http流傳送給客戶端,不在服務(wù)器上生成靜態(tài)xml文件。此種方法將會增加web服務(wù)器的運算負荷,對于訪問流量特別大的站點并非好辦法。本文將采用在一個動態(tài)的web站點每次添加。編輯新文章更新數(shù)據(jù)庫時,對更新數(shù)據(jù)庫的子程序或函數(shù)部分增加一段代碼,用SQL語句按時間的順序讀取文章表中最新幾篇新聞,然后直接在服務(wù)器上輸出文本流(FSO),生成符合RSS標準的XML文檔[2]。Web鏈接指向此靜態(tài)rss.xml文件即可。以某網(wǎng)站新聞頻道的RSS生成為例,實現(xiàn)方法描述如下:
首先是創(chuàng)建一個Create Rss.asp文件,用于定義Create Rss()函數(shù),用來執(zhí)行RSS FEED文件的生成過程,該函數(shù)調(diào)用了文件操作對象FSO;然后創(chuàng)建ReadNews.asp文件,用于讀取數(shù)據(jù)庫中符合條件的記錄,比如最新的新聞;之后調(diào)用Create RSS()函數(shù)生成RSS Feed文件,即rss.xml。具體生成過程的代碼如下:
1)CreatRss.asp文件的代碼如下:
<%
//將從數(shù)據(jù)庫中讀取的記錄以RSS格式或標準的形式寫入RSS提要文件,此處定義該函數(shù)功能;
//調(diào) 用 Create rss"C: ss.xml" "rss",True 可 以 創(chuàng) 建 文 件 rss.xml;
Sub Create Rss(strFile,strcontent,bln Append)
//參數(shù)strFile:文件名(包含路徑的文件名);
//參數(shù)strcontent:寫入RSS提要文件數(shù)據(jù)內(nèi)容;
//參數(shù) bln Append:是否追加
On Error Resume Next
//如果發(fā)生錯誤下面的處理
上面的代碼實現(xiàn)了Rss Feed文件的生成,接下創(chuàng)建一個ReadNews.asp文件,將站點新聞頻道中更新的內(nèi)容從相應(yīng)的數(shù)據(jù)表中讀取出來,并按RSS規(guī)范將讀取來的記錄數(shù)據(jù)放到RSS的相應(yīng)元素中,實現(xiàn)的代碼如下:
通過上述代碼的運行,產(chǎn)生了站點新聞頻道的RSS URL:http://站點的url/rss.xml。用戶只要在終端使用各類RSS的閱讀器訂閱本站點新聞頻道的RSS URL后,就可以實時的讀取站點中更新的新聞內(nèi)容。
以上實現(xiàn)方法會占用web服務(wù)器的存儲空間,因為生成的是靜態(tài)的xml頁面,所以占用的空間非常少。但對客戶端的用戶來說,請求靜態(tài)頁面xml處理起來毫無疑問比asp要快很多。僅占用了少量的服務(wù)器存儲空間,卻大大提高了客戶端的訪問速度。對于高效、迅速的web2.0應(yīng)用來說,無疑是一種更好的的選擇[3]。
本文在對RSS技術(shù)的原理進行闡述的基礎(chǔ)上,通過對RSS技術(shù)的一種更好的實現(xiàn)方法進行了說明,并對實現(xiàn)的代碼進行了分析和研究,提出了一種RSS技術(shù)來構(gòu)建基于Web2.0應(yīng)用的方法。
[1]Stephen Downes (2002). An Introduction to RSS for EducationalDesigners [z]
[2]朱良兵,紀希禹.RSS的本征與應(yīng)用[J],中國信息導報,2005(9):20-21.
[3]Chuck White,Liam Quin,Linda Burman.XML從入門到精通[M].周生炳,宋浩,肖偉譯.北京:電子工業(yè)出版社,2006:13-60.
TP393
A
1674-6708(2010)21-0179-02
胥杜鵑,助教,主要從事計算機軟件技術(shù)應(yīng)用開發(fā)