API 分页

集合接口需要分页:偏移分页简单但深翻页慢且数据变动时会漏项或重复,游标分页按稳定位置继续翻页,更适合大集合与实时数据。

方式

方式请求形态适用与代价
偏移?page=3&size=20实现简单;深翻页慢,增删会错位
游标?cursor=opaque&limit=20稳定高效;不能随机跳页
时间窗?since=...&until=...适合日志流;需处理边界重叠
分页要定义稳定排序键(含唯一兜底键),否则相同排序值的顺序不稳定,翻页会漏或重。

易错点

  • 用偏移分页暴露深翻页,数据库扫描开销大
  • 排序键存在重复值且无兜底键,翻页出现乱序

数据来源与参考

  • Google API 设计指南:Pagination
  • Microsoft REST API Guidelines:Pagination
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌