从 issuu.com 站点检索文档列表而不使用限制



我正在使用 http://issuu.com 网站在 laravel 上传文档并检索它的列表。我在从网站获取列表时遇到问题。我想从 http://issuu.com 获取所有记录。我用过代码

   $issuu = new Issuu('--my API key--', '--my API secret--');
   $documents = new Documents($issuu);
   $documentsList = $documents->list();

使用上面的代码,我只能从所有文档列表中获取 0 到 9 条记录。我想从该站点检索所有记录。如何获取上传到该站点的所有文档列表?谁能帮帮我!

如此处所述,Documents->list() 方法采用起始索引和页面大小的参数,分别默认为 0 和 10(即,您从结果 #0 开始获得前 10 个结果)。最大页面大小为 30,因此如果您的文档多于此大小,则需要发出多个请求才能获取所有文档。

这里有一篇很好的博客文章解释了 API 分页,包括如何从分页 API 获取所有结果。它的关键如下(伪代码,所以你需要把它翻译成PHP和你的API):

allResults = empty list
nextStart = 0
pageSize = 30
do {
    newResults = request $pageSize more results, starting at $nextStart
    add $newResults to $allResults
    nextStart = highest index in $newResults + 1
} while ($newResults indicates that there are more results)

do...while循环的条件将取决于您的 API。有些会在他们的回复中包含类似hasMore: true/false的内容,有些会要求您继续前进,直到您得到零结果,等等。

最新更新