检索Dribbble上的最后一个镜头需要太长时间

时间:2012-12-03 10:05:29

标签: jquery httprequest

我正在使用jQuery在my website上显示Dribbble数据。在这种情况下,我试图使用下面的代码显示我的Dribbble配置文件的最后一个镜头:

$.getJSON('http://api.dribbble.com/players/joaotiago/shots?per_page=1&callback=?', function(data) {

    url = data.shots[0].short_url;
    title = data.shots[0].title;
    src = data.shots[0].image_teaser_url;

    $('#dribbble a').attr('href', url);
    $('#dribbble a').attr('title', 'Last shot on Dribbble: '+title);
    $('#dribbble a').css({
        'background' : 'url('+src+')',
        'background-size' : 'contain'
    });      
});

大多数情况下,我的最后一次拍摄会在20秒后显示(在我网站上显示的三个圈子中的第一个),有时我甚至会得到502.请注意:来自控制台的Uncaught TypeError: Cannot read property 'artist' of undefined错误是由我所拥有的另一个unrelated issue引起的。关于为什么这么慢,有时甚至超时的任何建议?

2 个答案:

答案 0 :(得分:1)

嗯......可能只是他们的API非常缓慢(似乎是)。我不认为你可以做多少事情......

作为支票,请尝试直接从浏览器地址栏转到http://api.dribbble.com/players/joaotiago/shots?per_page=1,您会发现需要花费相当长的时间才能显示。

唯一的选择似乎是编写它们并让它们的API更快地工作,或者将结果缓存在你身边并异步刷新它:

  1. 显示缓存结果(理论上快速)
  2. 从API获取结果(将花时间,不要急于:我们已经展示了一些东西)
  3. 如果没有更改,请停止(利润)
  4. 如果已更改,请保存新结果 (也许可以用新的结果在你的页面上交换显示的结果...... 不是一个很好的体验,但它会影响第一个访客)
  5. 干杯。

答案 1 :(得分:1)

我尝试了一些请求网址,我的工作正常。虽然仍然是最后一次拍摄需要一些时间,这是第一次在任何网站上。在这里查看 get dribbble shots with set limit

  

我在Joomla的一个漂亮的Multi social tabs模块中使用过它   按Webkul,按照link进行查看   只需检查那里的运球标签