2012-03-26 73 views
1

我們正在開發與旅遊領域相關的基於Java的CMS,並且正在考慮公開Web服務,以便感興趣的第三方可以利用它們來獲取數據/內容從我們的系統發佈到那裏門戶/應用程序爲第三方創建/公開Web服務的設計決策

我不確定我們應該如何公開這些Web服務,並且不能清楚地瞭解設計預期。

由於我們有Action類(控制器)來處理視圖併發送回數據以查看,並且這些Action類將負責與Facade圖層進行合併。

有人可以建議我應該是最好的方法。

  1. 我們應該揭露Action類的REST接口也。
  2. 我們應該創建一個應該暴露的單獨的一組類。
  3. 我們應該繼續與休閒風格或基於SOAP的方法

MYU問題有點主觀的,但截至目前,沒有任何方向我不知道我可以把這裏的任何其他信息

更新

截至目前我們不考慮訂票等,但大部分的東西將是相對於只獲得內容從系統中。 但可能會在未來我們會提供選項,以提供一些產品THRID方可以賣那邊appllication

回答

1

首先,你可以看看 Difference between REST and WebServices

,那麼你一定知道,將第三各方可以更改您的一些數據(註冊,認證,預訂門票等)。在這種情況下,使用REST更適合我。

在我看來,你應該創建一些類,它們將負責使用你的Action類,並且他們還必須實現一些安全特性。因爲我認爲你的行動是內在的東西,安全必須在更高層次上實現。

如果訪問是隻讀的(就像獲取類型爲XXXX的所有數據),那麼SOAP也適用。

所以我的建議: 2.單獨的一組類 3.用戶REST - 雖然它似乎更靈活。

+0

感謝您的投入,基本上Action類是Struts2 Action(MVC框架),並且從UI中獲得了我們的Spring安全性。 – 2012-03-26 10:28:37

0

如果您想節省時間和精力,可以將操作類作爲URL公開。

但是,從長遠來看,REST API是您最好的選擇,因爲它們可擴展,如果您希望用戶通過API更新/創建數據。