我們正在開發一種社交網絡。 我們首先關注移動應用程序,因此我們使用jboss作爲應用程序服務器開發了自己的API(REST),一切都很好。在RESTFul API上開發一個網站
現在我們開始開發一個網站。我們決定在我們已有的API上建立這樣的網站,所以我們不必擔心數據庫管理。
我的問題是:我應該遵循什麼方法?
- 客戶端調用(使用AJAX)
- 服務器端調用(例如使用PHP,Python)的動態生成HTML頁面
你有什麼建議嗎?
感謝, 安德烈
我們正在開發一種社交網絡。 我們首先關注移動應用程序,因此我們使用jboss作爲應用程序服務器開發了自己的API(REST),一切都很好。在RESTFul API上開發一個網站
現在我們開始開發一個網站。我們決定在我們已有的API上建立這樣的網站,所以我們不必擔心數據庫管理。
我的問題是:我應該遵循什麼方法?
你有什麼建議嗎?
感謝, 安德烈
我喜歡一個混合的方法。
將客戶端直接呼叫到您的REST層將會遇到Authentication & Authorization問題。
因此,您需要有一個服務器端Facade來驗證應用程序會話,然後允許這些調用通過您的後端。
如果REST API丟失它們,該層可以使用分頁類型的邏輯。
有時,UI操作會要求您操作數據結構或多個REST調用來創建結果視圖。可能無法將UI操作直接一對一映射到後端REST調用。還有這個外觀有助於使API更友好。
最後 - 對於一些靜態/可緩存的HTML片段,您的服務器可以從REST層生成視圖並緩存它以加快服務速度。
因此,在總結
使用的node.js或playframework一種基於AJAX的UI構建UI層。
但是要使用Facade在擊中REST層之前編排,聚合,轉換,驗證和授權UI調用 - 以保持UI體驗更簡單。
完全取決於你想要達到的目標。使用客戶端API調用的網站的好例子是PivotalTracker和Trello - 服務器端調用可能會減慢你的頁面加載速度。 –