2017-08-18 8 views
1

itemsのリソース、つまりapplicationsのサブリソースである、applications/{:id}/itemsのエンドポイントを記述しています。アイテム、アプリケーションともに、名前以外のプロパティがあります。GETエンドポイントを作成せずに、REST APIにPUTおよびPOSTエンドポイントを作成しますか?

私は

  • GET applications/{:applicationId}/itemsを作成している - アプリケーション

  • POST applications/{:applicationId}/itemsに属している項目のリストを返します - アプリケーション

  • PUT applications/{:applicationId}/items/{:itemNumber}ためのアイテムを作成する - の項目を更新アプリケーション

クライアントは、アプリケーションのためのアイテムではなく、個々の項目のリストを見ることが一般的にのみ関心があるので、私のチームは

GET applications/{:applicationId}/items/{:itemNumber}

が不要なエンドポイントを作成することを考えています。同じリソースに対して既にPOSTPUTのエンドポイントがあることを考慮して、このようなエンドポイントを作成しないことは悪い考えですか?

+0

DELETED CODEでNO BUGSはありません。 – tima

答えて

2

一致するGETなしでPUTを作成することは、完全に受け入れられます。

後で必要になった場合は追加できます。あなたがそれを必要とする前に作成すると、必要でも使用されていないコードも運ばれますが、それを維持しテストする必要があります。

テストまたはメンテナンスしない場合は、削除する必要があります。

は、あなたはいつもそれを後で追加することができ、必要なときに、あなたはリソースの要求のすべてのタイプのハンドラを作成する必要があり、ルールがない

関連する問題