2016-02-22 74 views
0

我寫了很多休息服務和前幾周的前臺,我仍然不確定是否有比我做的更好的方法。Rest Architcture - 請求和響應對象

在某些情況下,我製作了映射對象,因爲在前端聚集了對象,並在需要時添加了其他屬性。而映射對象的一個​​優點是可以設置(特殊)默認值。

我現在的問題是你怎麼看待映射對象,因爲標準是做沒有映射對象的REST服務。

回答

0

標準是一定要讓REST服務,而不映射對象

哪些標準呢?我從來沒有聽說過這樣的標準,「REST」是一種建築風格,所以有慣例,實踐,但AFAIK還沒有標準。

無論如何,你是映射對象,這是一個很好的做法。這樣做,您可以保護您的域模型,它可以獨立於界面(域驅動設計/防腐層)發展。

希望這會有所幫助。

+0

非常感謝!我不確定這是因爲我在後端彙總了不同的對象,就像我在前端需要它一樣。我認爲REST的概念是每個資源都有一個ID,如果我需要前端10個資源比我不得不要求後端10次。我只請求後端一次,並在後端聚合和映射對象。 – quma

+0

如果您不想向後端發出很多請求,請設置緩存。您應該避免僅出於顯示原因而彙總數據:REST資源應該代表一個概念,這個概念可以是多個實體的聚合,但是您不應該期望API爲您的視圖組成數據。 – cdelmas

+0

只是爲了澄清,REST *確實*有一個約束,即每個資源都必須有一個標識符。但是,資源無需與您的域模型進行1對1映射。事實上,這是一種反模式。 –