![]() by G.F.Ruan 網(wǎng)絡(luò)正在越來越普及的方式融入現(xiàn)實(shí)生活,和現(xiàn)實(shí)一樣,人在網(wǎng)絡(luò)中的生活也是零碎的、片斷的,是散落于不同的站點(diǎn)與應(yīng)用之間的。但是隨著web服務(wù)與數(shù)據(jù)源(feeds)標(biāo)準(zhǔn)的普及,借助于mashup這一技術(shù)將這些散落的用戶體驗(yàn)匯聚成一個(gè)完整的個(gè)人網(wǎng)絡(luò)生活世界已經(jīng)可以初步實(shí)現(xiàn)了。 本文介紹了使用yahoo pipes將各人不同站點(diǎn)中的數(shù)據(jù)源進(jìn)行混聚的一個(gè)實(shí)例。 yahoo pipes是一個(gè)可視化的在線mashup創(chuàng)作環(huán)境,類似的作品還有microsoft popfly(可惜的是popfly雖然也很炫很酷,卻是基于silverlight的,這就意味著如果你使用的是XP,還需要再安裝一個(gè)插件),所以就用戶體驗(yàn)而言,Google Mashup Editor這個(gè)基于偽代碼的開發(fā)工具雖然靈活,但遠(yuǎn)不如pipes好用。所以,Yahoo雖然在資本與市場(chǎng)上運(yùn)營得頗多微辭,但不妨礙Piples成為最出色的mashup開發(fā)平臺(tái)。 進(jìn)入正題,這一mashup的制作思路非常簡單,將某一用戶中不同站點(diǎn)的數(shù)據(jù)源加以匯聚,這個(gè)很容易理解,以本人為例,包括百度空間RSS源http://hi.baidu.com/ileo/rss、豆瓣活動(dòng)http://www.douban.com/feed/people/zjlester/interests、飯否中的微博客http://api.fanfou.com/statuses/user_timeline/ileo.rss等等,由于這些源遵循標(biāo)準(zhǔn)的RSS/ATOM規(guī)范,因而可以使用Yahoo Pipes的Fetch Feed捕獲(對(duì)于其它非標(biāo)準(zhǔn)格式,如CSV等可以使用相應(yīng)的源控件,即使不遵循相關(guān)規(guī)范的,如果滿足一定的規(guī)范,也可以使用URL Builder來構(gòu)造)。 數(shù)據(jù)源引入之后,需要將其進(jìn)行混合,或者是聚合,這里需要使用的是另一個(gè)控件Union,這相當(dāng)于是將不同的源中的數(shù)據(jù)混聚為一個(gè)單一的數(shù)據(jù)源,為了顯示的有序性,我們還需要再在后面引入一個(gè)SORT控件,使其按數(shù)據(jù)源不同item按pubdate即發(fā)布時(shí)間進(jìn)行倒序排序,這樣最近的活動(dòng)便可以顯示最上面。 最終的piples中的設(shè)計(jì)圖如下圖所示。 ![]() 運(yùn)行這個(gè)mashup,在瀏覽器中的顯示效果如文首圖所示,它可以Badge/Gadget的方式使用于你的個(gè)人站點(diǎn)、iGoogle、Google桌面環(huán)境等,或者是以腳本的方式嵌入你自己的個(gè)人站點(diǎn)。另外,你還可以創(chuàng)建電子郵件或是即時(shí)通訊(支持Yahoo通)的方式訂閱更新,這樣當(dāng)這個(gè)mashup內(nèi)容有更新時(shí),就可以第一時(shí)間獲悉了,當(dāng)然了,如果你在美國,還可以設(shè)置手機(jī)綁定。 |
聯(lián)系客服