首页 > 解决方案 > 如何从 Twitch API 搜索分页结果

问题描述

我正在尝试从 twitch API 按名称搜索游戏,我可以使用以下代码来执行此操作:

var games = [];

$.ajax({
    url: 'https://api.twitch.tv/helix/games/top',
    headers: {
        'Client-ID':'xxxxxxxxxxxxxxxxxxxxxx',
        'Content-Type':'application/json'
    },
    method: 'GET',
    dataType: 'json',
    success: function(data){
      games.push(data.data)
    }
});

$(document).ajaxComplete(function() {
  var search = "Counter-Strike".toLowerCase();
  var results = games[0].filter(function(data) {
    return data.name.toLowerCase().indexOf(search) > -1;
  });
  console.log(results);
});

问题是这只返回 20 个结果,如何搜索所有结果?

twitch API确实在响应中提供了一个 patination,但我不知道如何使用它来解决我的问题。

标签: javascriptjquerytwitch

解决方案


您在问题中添加到 Twitch API 的链接显示了如何查询更多结果以及如何分页。

?first=20&after=20

以下代码应返回 20 个结果的第二页,即从 21 到 40。

$.ajax({
    url: 'https://api.twitch.tv/helix/games/top?first=20&after=20',
    headers: {
        'Client-ID':'xxxxxxxxxxxxxxxxxxxxxx',
        'Content-Type':'application/json'
    },
    method: 'GET',
    dataType: 'json',
    success: function(data){
      games.push(data.data)
    }
});

推荐阅读