4

パスを作成しました:

POST /books/4/chapters 

Chapterエンティティは構成の一部ですBook。本がなければシステムに存在することはできません。上記の URI に投稿してチャプターを作成した後、特定のチャプターを更新および取得するための回答リソース用に別の一連の URI を作成する必要がありますか?

GET /books/4/chapters/6またはGET /chapters/6

1 つのレベルの主キーを取得したら、特定のオブジェクトを既に取得しているため、通常は上記のレベルを含める必要はありません。言い換えれば、URL が /resource/identifier/resource の上にあるものよりも深い場合はあまり必要ないはずです。

apigee Web API 設計から

これGET /chapters/6は記事の内容により忠実ですが、これは、オブジェクトがその親のスコープ内にないことも意味します (クラス Book の複合オブジェクトの一部であるため)。ただし、チャプターは再び他のオブジェクトの構成になる可能性があるため、これはより良いと感じています。つまり、長いネストされた URI を取得します。

GET /books/4/chapters/5/paragrahps/5すべてが親のスコープ内にある必要がある場合。

これを行うための好ましい方法は何ですか

編集

さらに考えた後/books/4/chapters/9、コンポジットであるため、親なしで特定のフィードバックを取得するためのコードにリポジトリなどがないため、などのような URI を持つことがおそらく最善でしょうか?

4

1 に答える 1