如何管理分页请求以获取结果?

时间:2019-05-24 09:15:24

标签: node.js request

我请求API获取大量数据。该API的参数start和offset可以“分页”到整个数据集。

我不知道该如何在nodejs中进行管理,因为每个请求都是异步的,如果我启动我的应用程序,则整个请求会同时发送。

我不知道必须请求多少页,因此我尝试了一个循环,直到没有数据响应为止。但这仍然不适用于异步请求。

这是我的抽象代码

let start = 0;
let offset = 500;
let data = true;
while(data) {
 request.get({url: 'https://api.domain.de/action/?start=' + start + '&offset=' + offset}, function(err, resp) {
  // do something with response
  if(resp === "") {
   data = false;
  }
 });
 start += offset;
}

也许可以异步触发1000个请求,但我不想渗透api服务器。

有什么主意我应该怎么做这个问题?我是nodejs的新手,也许我不了解整个回调主题。

1 个答案:

答案 0 :(得分:1)

如评论中所述,您可以使用df = df.div(df.sum(axis=1), 0) 触发所有异步请求。进一步了解here

Promise.all