创建有效循环以从API为每个项目收集数据

时间:2016-01-30 23:24:15

标签: javascript jquery html

我想要实现的是通过jQuery中的JSON请求传递特定属性中的每个项目的有效方法,以便我可以从API收集有关它的信息。 API是Twitch,每个数据属性都是一个流媒体名称。

每个流媒体的定义都是这样的 -

<div streamer='streamer_name'></div>

从API我想收集他们的状态和信息。但是,Twitch API不会在原始API网址中展示有关离线流式传输器的信息,因此我必须使用两个API网址来获取所有必需的数据。

我创造了一些有用的东西,而且我对此很新,我很可能错过了使其尽可能有效所需的重要功能。

&#13;
&#13;
$('[streamer]').each(function() {
  var data = $(this);
  var streamer = $(data).attr('streamer');
  $.getJSON('https://api.twitch.tv/kraken/streams/' + streamer, function(x) {
    if (x.stream != null) {
      $(data).append(
        //online data
      );
    } else {
      $.getJSON('https://api.twitch.tv/kraken/channels/' + streamer, function(x) {
        $(data).append(
          //offline data
        );
      });
    }
  })
})
&#13;
&#13;
&#13;

http://jsfiddle.net/W4Km8/8801/以获取此代码实际执行的示例。

编辑:还有一种方法可以同时搜索多个流式传输,但同样,它也不会显示任何脱机的数据。

https://api.twitch.tv/kraken/streams?channel=riotgames,scrags

EDIT2:为了更具体地说明我的疑惑,偶尔它会错误地追加数据并打破页面布局,或者根本不显示。这种情况在页面刷新时经常发生。

由于

0 个答案:

没有答案