我设计像一个基于YUI的客户端的分页数据检索API休息。 其余的URL看起来像这样的一个GET请求:
/app/catalog/data?startIndex=<int>&results=<int>&sort=<sting>&dir=<string>
所有的参数都是可选的,也就是说,如果没有给定参数,从数据库的所有数据将被倾倒。 现在说,有只有1000数据库中的记录。 继reqeust即发:
/app/catalog/data?startIndex=1100&results=25
我应该返回如果从数据库中分页结果仍然为空,虽然要求是罚款什么状态代码? 我不能决定这是否是204
或404
。
产生的媒体类型是JSON和CSV。
我会说204是最合适的。 该请求是成功的,只是没有结果。
10.2.5 204 No Content
The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation.
听起来酷似情况。
我不能决定这是否是204
或404
。
都不是。 只是返回200
与空结果(空XML文档或JSON阵列,无论你使用)。 通常我用分页意见REST服务,从而伴随着搜索结果页我返回记录总数。 这将帮助客户实现的错误。 但在技术上是没有什么错。
使用204
的DELETE
操作(真的没有内容返回)和PUT
。
BTW(粗体矿):
如果没有给定参数, 从数据库的所有数据都将被转储
相信我,你不想这样做...
什么格式,你正常返回的结果? 我倾向于让这个204甚至200返回一个空列表。