2016-08-01 6 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を介して一貫したリソース表現を維持したい場合は、それは良い考えです。あなたは、しかし、そのような変化が起こるまで、それを抽象化する時間を費やす前に、待つことができます。