6.6 Pagination
对于资源集合,分页获取是一种比较合理的方式。如果基于开发框架(如Django REST Framework),直接使用开发框架中的分页机制即可,如果是自己实现分页机制,Gevin的策略是:
返回资源集合是,包含与分页有关的数据如下:
{ "page": 1, # 当前是第几页
"pages": 3, # 总共多少页
"per_page": 10, # 每页多少数据
"has_next": true, # 是否有下一页数据
"has_prev": false, # 是否有前一页数据
"total": 27 # 总共多少数据}
当想API请求资源集合时,可选的分页参数为:
参数
含义
page 当前是第几页,默认为1
per_page 每页多少条记录,默认为系统默认值
另外,系统内还设置一个per_page_max字段,用于标记系统允许的每页最大记录数,当per_page值大于 per_page_max 值时,每页记录条数为 per_page_max。
https://blog.igevin.info/posts/restful-api-get-started-to-write/