0

我有一个从开放 API 获取记录的 Angular 服务。API 限制我一次只能获取 100 条记录,在我检索到第一批之前,我不知道要获取多少条记录。

API 响应的格式如下所示:

{
    "offset": 0,
    "limit": 100,
    "total": 140,
    "count": 100,
    "results": []
}

"total"在获取第一页并从响应中获取值之前,我不知道需要对 API 进行多少次调用。

知道如何做到这一点吗?

谢谢!

4

1 回答 1

0

不是角度特定的问题,所以这里没有(真实的)代码。

任何语言;你可以这样做:(即从接收数据的函数中调用 getData 函数)

var limit = 100;
var offset = 0;

function getData(offset) {
 someHTTPcall('http://...?offset='+offset)
 mapData(response)
}

function mapData(result) {
 myData.push(response.results)
 if (myData.length < response.total) {
   getData(myData.lenght +1)
 }
}
于 2016-12-09T16:01:50.053 回答