获取REST中的项目列表时找不到任何项目

时间:2013-07-31 02:17:14

标签: api rest api-design

这是一个最佳实践问题,但是你们中的一些人可能会对这里可能产生的影响有所了解。我想说我打电话:

GET /v1/items/

并且没有找到任何物品。

我应该回来:

  1. 只是404
  2. 200,空数组
  3. 404,空数组

1 个答案:

答案 0 :(得分:2)

取决于您希望如何处理响应。 我会用空数组去200,表明REST调用成功但找不到匹配项。这对于消耗deerialized响应的层有用。

如果您严重依赖HTTP状态代码进行下游处理/错误处理/错误消息,那么404就可以了。如果请求通常也通过浏览器执行,这将非常有用。而这也是一种纯粹的做法。

我没有看到第三个选项有任何附加价值。