分页是否应该在API中进行零索引?

时间:2016-02-23 23:29:05

标签: api rest api-design

当实现具有分页参数的Rest API时,分页应该是零索引或从1开始。参数将是Page和PageSize。

对我来说,从1开始是有意义的,因为我们正在谈论页面

1 个答案:

答案 0 :(得分:13)

没有标准。只需浏览一下:有数十万个API使用不同的方法。

我知道的大多数API使用以下方法之一进行分页:

  • offsetlimit
  • pagesize

两者都可以01编入索引。哪个更好?这取决于你。

选择符合您需求的正确记录

此外,您可以在响应有效负载中提供一些链接,以便在页面之间更轻松地进行导航。

例如,考虑从第2页读取数据。因此,请提供上一页(第1页)和下一页(第3页)的链接:

{
    "data": [
        ...
    ],
    "paging": {
        "previous": "http://api.example.com/foo?page=1&size=10", 
        "next": "http://api.example.com/foo?page=3&size=10" 
    }
}

请记住,请始终制作一个 希望使用的API。