特定のリソースを「アクティブ」に指定できる REST API に取り組んでいます。説明するために、私が達成しようとしていることの簡単な例を次に示します。
書籍のコレクションを表す URI があるとします/books
。
特定の書籍には、形式の正規 URI があり/books/{id}
ます。
アクティブなブックへのポインターを提供する別の URI があります: /books/active
. これは、アクティブな書籍の正規 URI を参照する HTTP 303 を送信するだけです。
クライアントがアクティブなブックを更新できるようにする最善の方法は何ですか? /books/active
アクティブなブックの正規 URI を指定する際にクライアントが PUT を発行できるようにする必要がありますか、またはこの種のことを行うための別の一般的に受け入れられているパターンはありますか? (クライアントが、リソースの実際の表現ではなく、正規の URI を送信する PUT を発行するのは奇妙に思えます。)
更新:一度にアクティブにできる本は 1 つだけです (相互に排他的)。したがって、アクティブ フラグを本自体のプロパティにすることは意味がないと思います。これは、複数の本が値を持つ可能性があることを意味するためです。 true に設定します。