パスを作成しました:
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 を持つことがおそらく最善でしょうか?