2016-08-01 97 views
-2

這是REST API接口上的一個通用問題。我的應用程序中有一個包含實體和值對象的域模型。目前從REST服務實現中使用相同的域模型,並且REST請求/響應結構也具有這些實體和值對象的引用。爲REST輸入/輸出建立單獨的對象結構還是使用內部域對象構造請求和響應對象是好的主意。REST API接口指南

回答

0

當涉及到REST API接口時,它不應該也不應該如何實現應用程序層。當然,在接口,應用程序和數據層中使用的對象模型之間會有很多重疊。但那是因爲他們在功能上代表了同一個系統。應用層實現不能影響你的API接口本身。

下面的參考對於REST API設計來說非常全面。
https://github.com/Microsoft/api-guidelines/blob/master/Guidelines.md

而且Apigee有一個很不錯

https://pages.apigee.com/rs/apigee/images/api-design-ebook-2012-03.pdf

0

很明顯,您可以在REST資源對象和服務的內部域模型之間提供一個抽象層。這是否有意義取決於您的應用程序設計。我只能說,如果您期望內部域模型發生變化,但希望通過外部API維護一致的資源表示,那麼是的,這是個好主意。不過,您可能會等到發生這種變化時才投入時間來抽象它。