如何返回所有页面而不是仅第一页

问题描述 投票:0回答:1

我正在查询 URI 以从 Web 服务获取一些数据。 那就好了。 但我注意到我的json有多个页面的

page_count
,但只返回了第一页数据。

这是 json 的样子:

{
  "last_item": null,
  "total_items": "201",
  "first_item": null,
  "page_number": "1", **<-- THIS IS 1ST PAGE**
  "page_size": "10", 
  "page_items": null,
  "search_time": "0.045",
  "page_count": "21",  **<-- THERE IS 21 PAGES IN TOTAL**
  "cars": {
    "car": [
      { ... },
      { ... },
      ...
      ...
      ]
   }
}

如何返回所有页面而不是仅返回第一页? 我知道这可能不是个好主意,但我该怎么做?

更新: Web 服务的 URI 类似于:

http://<api_address>.com/json/cars/search?app_key=<api_key>&c=music&location=32.263569,-111.9847682

谢谢,

c# json pagination uri
1个回答
1
投票

我发现您正在使用应用程序密钥。

所以我猜您使用的 API 在某种程度上限制了查询量每个查询的数据量。

我可以想象您使用的查询始终仅返回一页数据,以及可用页面的总数,以让您知道还有多少页面可用。

我想如果你不指定你想要的页面,查询默认返回第一页。

更新

因此,如果您无法将每个查询的页面大小设置为大于 50,那么这是您(可能)无法更改的 API 端限制。

这意味着在客户端您需要多次查询。有多种方法可以做到这一点,但您应该问自己是否想要这样做。

您真的需要立即获取所有这些数据吗? 客户端带宽使用量可能会急剧增加。 如果汽车数量突然增加到内存不足,会发生什么情况? 如果每个应用程序密钥的 API 查询在某种程度上受到数据量、请求量的限制(同样,我不知道您使用的是什么 API),API 的工作负载也会不必要地增加。

如果有 API 文档,也许可以深入研究一下。可能还有其他查询完全符合您的要求,但可能尚未包含有关“汽车”的所有详细数据,但包含一些元数据。

© www.soinside.com 2019 - 2024. All rights reserved.