我正在开发一个可以将特定资源指定为“活动”的 REST API。为了说明,这是我想要实现的一个简单示例:
假设我有一个代表书籍集合的 URI /books
:.
一本给定的书有一个规范的 URI 形式/books/{id}
。
我有另一个 URI,它提供了指向活动书籍的指针:/books/active
. 这将简单地发送一个 HTTP 303 引用活动书籍的规范 URI。
允许客户也更新活动书籍的最佳方式是什么?我应该允许客户在为活动书籍指定规范 URI 时发出 PUT /books/active
,还是有另一种普遍接受的模式来做这种事情?(对我来说,客户端会发出一个发送规范 URI 而不是资源的实际表示的 PUT 对我来说似乎很奇怪。)
更新:一次只能激活一本书(互斥),所以我认为将活动标志作为书籍本身的属性是没有意义的,因为这意味着不止一本书可能具有价值设置为真。