shindig

Shindig是一個參考容器,可以運行在任何網站上,用來支持OpenSocial的社交套用。

基本介紹

  • 中文名:shindig
  • 類屬:一個參考容器
  • 公司:Google
  • 開發時間:2007年
Shindig簡介,Shindig功能介紹,Shindig 的伺服器端架構圖,

Shindig簡介

它最開始是由Google在2007年開發的,作為iGoogle的Gadget容器,然後在2007年12月成為Apache的一個開源項目。Shindig的主要目的就是為那些希望使用支持OpenSocial規範軟體的社交網站提供基礎設施,使得社交套用的開發者不用去關心平台的轉換問題。目前,很多社交網站都是基於Shindig實現自己的OpenSocial功能。Shindig的另一個目標是多語言實現,目前Shindig有JavaPHP兩個版本。Shindig的最新發布版本是 2.0.1,實現了OpenSocial 1.1的規範。
Shindig 的一個 Gadget 測試容器界面Shindig 的一個 Gadget 測試容器界面

Shindig功能介紹

什麼是 OpenSocial
OpenSocial是基於開放標準的一組通用的 API,用於幫助 WEB 的開發者構建跨多個社交網站的可移植的社交應用程式。OpenSocial提供開發者一套通用的 API,基於該通用 API 開發的社交應用程式可以運行在任意支持 OpenSocial 規範的社交網站上。
Apache Shindig
Shindig 是 OpenSocial 規範的引用實現,其主要的組件包括 :
Gadget Container JavaScript,OpenSocial Gadget 容器,客戶端的 JavaScript 類庫 (gadget.js),提供例如 UI Layout,Security, Communication 等相關的功能。
Gadget Rendering Server,負責解析 Gadget XML, 轉化成瀏覽器使用的 HTML/JavaScript/CSS。
OpenSocial Container JavaScript,位於客戶端的 OpenSocial 容器,也是 JavaScript 類庫,提供 OpenSocial 相關的功能,例如存取 People, Activity, AppData 等相關的社交數據。
OpenSocial Data Server,提供基於 Restful/RPC 協定的 Services,用於存取 People, Activity, AppData 等相關的社交數據

Shindig 的伺服器端架構圖

shindigshindig
從圖 1 中可以看到,Shindig 基於 Java Servlet Stack 實現。GadgetRenderingServlet 負責 Gadget Rendering, 而 DataServiceServlet 和 JsonRpcServlet 實現 OpenSocial Data Server 中相對應的 Restful 及其 RPC 服務。JsonDbOpensocialService 通過實現 ActivityService, PersonService, AppDataService 三個接口向 Shindig OpenSocial 容器提供基於 Json 格式的 OpenSocial 數據。客戶端的 Gadgets 可以使用標準的 OpenSocial API 訪問到這些數據。

相關詞條

熱門詞條

聯絡我們