2013-07-01 115 views
1

我正在開發一個項目,供智能手機應用程序和單頁應用程序網站使用。我使用Backbone.js進行數據綁定。REST風格的API架構

我有一個架構問題:如何讓我的API變得寧靜,但豐富了我的模型中返回的數據。

舉例:

我想更改用戶在組中的角色。

在寧靜的情況下,我會加載組中特定用戶的角色集合。我會在該組的上下文中檢查並取消選中要應用於用戶的角色,然後保存。因此,我爲角色數組進行了一次GET,併爲PUT保存了更改後的列表。我面臨的問題是我需要使用更多的元數據來豐富我的模型,例如組的名稱,用戶的名稱等,以便用戶在編輯數據時有一些上下文。

我可以很容易地做到這一點,但隨後我再也沒有和我的模特一起休息。

有沒有人有任何資源可以幫助我構建我的解決方案,使用Backbone.js實現最佳的兼容性和可用性?

+3

爲什麼你認爲與元數據更新骨幹模型時,你是損耗RESTFulness? –

+0

同意。這基本上被命名爲'擴展',這非常有用。 – mikalai

回答

0

您可以創建可在智能手機應用程序和單頁應用程序網站中使用的Restful Web服務。

請看看 http://blogs.msdn.com/b/hongyes/archive/2012/08/30/single-page-application-with-backbone-js-and-asp-net-web-api.aspx

在這裏,他們正在創造與Backbone.js的和ASP.NET Web API SPA(創建RESTful Web服務)。

其他巨大的資源可以在這裏找到: http://www.asp.net/single-page-application/overview/templates/backbonejs-template

感謝。

1

骨幹模型不會讓您的應用程序更加寧靜。 大多數情況下,休息是關於HTTP客戶端和服務器之間的交互。 像REST API URI Design Approach問題一樣,大多數關注點在於URI設計。

思維或將REST作爲出發點(至少它爲我的作品)的更實際的辦法是考慮在以下幾個方面:

1)僅使用HTTP「GET/POST/PUT/DELETE '作爲模擬您的域'行爲'的方式。就像在處理數據庫時一樣,您的所有操作都映射到CURD

2)URI/URL僅用於標識資源。不應該在你的URI中有任何'動作'。

3)交換的數據應該在HTTP消息的主體中。 只是爲了簡化討論,並沒有深入如何模擬數據本身

兩本關於休息的好書。