我想在我的 RESTful API 中支持分页。
我的 API 方法应该通过 /products/index
返回产品的 JSON 列表。但是,可能有成千上万的产品,我想浏览它们,所以我的请求应该是这样的:
/products/index?page_number=5&page_size=20
但是我的 JSON 响应应该是什么样子的呢?API 消费者通常会在响应中期待分页元数据吗?还是只需要一系列的产品?为什么?
看起来 Twitter 的 API 包含了元数据: https://dev.twitter.com/docs/api/1/get/lists/members(参见示例请求)。
使用元数据:
{
"page_number": 5,
"page_size": 20,
"total_record_count": 521,
"records": [
{
"id": 1,
"name": "Widget #1"
},
{
"id": 2,
"name": "Widget #2"
},
{
"id": 3,
"name": "Widget #3"
}
]
}
只是一组产品(没有元数据) :
[
{
"id": 1,
"name": "Widget #1"
},
{
"id": 2,
"name": "Widget #2"
},
{
"id": 3,
"name": "Widget #3"
}
]