2007年11月2日 星期五

My OpenSocial Gold App 一友一兩金

日前出爐的 OpenSocial - Google Code 看起來很有趣,加上之前的你有多少黃金 ? LinkXD 0.4.2 Gold Release也玩出一點意思,於是就混搭出這個「一友一兩金」東西出來。

一友一兩金是個 OpenSocial - Google Code 的概念式實做,注重在鳥瞰一下整個流程與瞭解 OpenSocial 應用的全貌,不講理論,只是動手做看看。

動手做第一個問題是目前可測試的容器太少,目前線上的社群網站有支援 OpenSocial 要它開給你測試也不太可能,簽了Orkut Sandbox Sign Up 也還沒得到許可,於是只好先自己做一部分,這裡試著實做部份 OpenSocial API 來提供兩個 Container AContainer B 給 Gold App 掛上去,讓想要看看 OpenSocial 應用的朋友嚐個鮮,這個應用只是用來展示整個流程,所以不會有很花俏的輸出介面,只是把字秀出來而已。

請注意,這只是小部份 OpenSocial Container 實做,並非完整的實做,只是供參考用。練習一下你會發現為何這個東西有機會吸引那麼多互相競爭的網站願意加入實做。

第一個原因在於它雖然是 G 提出的規格,卻可以完全不用 G 的服務,也就是完全沒有綁在一起,你可以各做各的,像這裡就做了兩個陽春到不行的 Container,你可以下載上傳到任何網頁空間去跑,雖然這兩個容器放在 G 的網頁服務裡,但是 ContainerA/ContainerB/Gold App 是跟 G 服務不相依的,你可以搬到你要的地方。

另一個原因就是 App 的大量出現,如果你的社群網路可以加入,又不怕被綁,又可以得到一大堆新的 App 可以吸引使用者,自然會讓這些網站願意加入,反正也不會有啥大損失,又是用 Html + JavaScript 這種基本技術,要轉接一下介面,不會太費工。

示範有兩個容器 Container 以及一個應用 Gold App,該 Gold App 會利用 OpenSocial API 取出你在該容器的朋友數,以一個朋友值一英兩黃金計算方式,由 Gold App 去取回當時即時報價資料(目前為模擬檔案),然後輸出到該 Container 的頁面,你的朋友價值將以新台幣、美元、歐元或是值幾桶原油方式呈現。同一隻 app.js 可以跨到 ContainerB 也不用改,這是 OpenSocial API 的最大好處。

有一點請注意,為了方便, Container AContainer B 還有 Gold App 的 app.js 原來應該分別放在三個網站,而不是目前掛在同一目錄的樣子,這一點一定要先弄清楚。

這裡使用The Dojo Toolkit | The JavaScript Toolkit來幫忙做 ajax 的功能,你也可以用純的 JavaScript 或是其他Ajax framework - Wikipedia來做,全憑你喜歡。

這裡不討論登入與使使用者權限的問題,那個部份目前細節太少,所以目前只是先看看一整個流程,有個概念就好,你可以直接觀看線上兩個 Container AContainer B 的原始檔,或是到樂連LinkXD Download(蠻下面的)這裡下載 zip 檔案,解開後就可以用 Firefox 試看看,也可以傳到 Google Page Creator 上面,就像示範的 Container AContainer B 一樣。

另一個可以關注的議題是安全的部份,目前雖然尚未有太多的實做或是資訊可以參考,仍然有人可以找到漏洞,參閱 First OpenSocial Application Hacked Within 45 Minutes,可見的將來,這個開放的平台將受到更多的檢驗與測試,如果可以越來越安全,目前的初期漏洞被揭露也不見得是壞事。

還有一個可以關注焦點是台灣的社群網站何時支援應對 OpenSocial,那個第一時間接上這個突然冒出來的源源不絕的超大 App 水龍頭的網站,應該會讓會員用的很爽吧,畢竟維護程式以及請工程師也是很貴的。

也許有機會的話,你可以很快看到 LinkXD Gold App 修的美美的,出現在你的社群首頁也不一定。


圖片來自OpenSocial - Google Code,根據其Creative Commons Attribution 2.5 Generic授權引用。


參考連結

OpenSocial, Google’s Open Answer to Facebook « GigaOM

Google Announces API Connecter For Social Networks | WebProNews

Six Apart - News and Events: OpenSocial, Killer Apps and Regular People

[補充更新]

Surprise–OpenSocial is alpha code

LinkXD

去部落格曬曬陽光

沒有留言: