在我们的项目中,可以通过 REST 检索所有书籍的列表:
GET http://server/api/books/
可以按以下方式检索特定书籍:
GET http://server/api/books/:id/
删除特定书籍很容易:
DELETE http://server/api/books/:id/
现在,对于我的问题:以下调用的结果应该是什么:
DELETE http://server/api/books/
显然,所有的书都被删除了。但是资源书/也应该被删除吗?也就是说,在请求之后:
- GET /books/ 应该返回 200 OK 和一个空列表吗?或者
- GET /books/ 是否应该返回 404 未找到?
根据规范,具体的 URI 将在之后消失,我会选择第二个选项。然而,在我看来,这使事情变得复杂和不合逻辑。有一个空的书单比没有书更有意义。
你怎么看?