如何根据分页 API 中的 属性 获取前 X 个项目?
How to get top X number of items according to a property in a paginated API?
请注意问题故意含糊不清。
假设,我有一个 API 和 return 分页的书籍数据。每页 100 本书 objects [此数据存在于 headers 中,例如 'total-pages'。响应 body 采用 JSON object 列表的格式。
[
{},
{},
.
.
.
]
假设图书 object 具有所有必要的数据,例如标题、描述、销售数量等。我如何 return top-selling n 本书 [top-selling => 最高销量]?
您不能提供任何参数,例如
GET endpoint/orderby=popularity&order=desc
到此端点,您无法进行任何数据库查询优化。我们如何只用纯代码解决这个问题?
如果有任何想法或建议,我将不胜感激。
由于端点接受的参数有限,您唯一的选择是获取所有页面(通过不断循环直到出错)然后在您的程序中自行排序。
如果上述解决方案很慢,您可以通过将要求从return top-selling n number of books
放宽到return a few top-selling books which are in the top X%
来优化
请注意问题故意含糊不清。 假设,我有一个 API 和 return 分页的书籍数据。每页 100 本书 objects [此数据存在于 headers 中,例如 'total-pages'。响应 body 采用 JSON object 列表的格式。
[
{},
{},
.
.
.
]
假设图书 object 具有所有必要的数据,例如标题、描述、销售数量等。我如何 return top-selling n 本书 [top-selling => 最高销量]? 您不能提供任何参数,例如
GET endpoint/orderby=popularity&order=desc
到此端点,您无法进行任何数据库查询优化。我们如何只用纯代码解决这个问题? 如果有任何想法或建议,我将不胜感激。
由于端点接受的参数有限,您唯一的选择是获取所有页面(通过不断循环直到出错)然后在您的程序中自行排序。
如果上述解决方案很慢,您可以通过将要求从return top-selling n number of books
放宽到return a few top-selling books which are in the top X%