使用jQuery $ .getJSON处理Twitter API错误

时间:2010-12-15 23:29:37

标签: javascript jquery ajax twitter getjson

$.getJSON(twitter_url, function(data){ 
                          loadtwit(data);
                });

我通过$ .getJSON查询twitter网址,例如: http://twitter.com/statuses/friends/stevejobs.json?callback=

如果推文受到保护,有时浏览器响应为UnAuthorized。如何处理该响应以避免触发登录表单。

成功:loadtwit(数据);

其他:默默地死去

2 个答案:

答案 0 :(得分:2)

您可以使用$.ajax并提供错误处理程序。

$.ajax({
  url: twitter_url,
  dataType: 'json',
  success: function(data) {
    loadtwit(data);
  },
  error: function(xhr, testStatus, error) {
    // handle error
  }
});

答案 1 :(得分:0)

我认为我找到了接近解决方法的东西,如果不是最后答案的话。

在我的情况下,我想根据我所知道的用户名显示用户的位置,姓名,照片和一些推文,所以我试图使用它:

http://api.twitter.com/1/statuses/user_timeline.json?&screen_name=stevejobs&count=20&callback=

在使用受保护的推文查询用户时会触发看起来像网络钓鱼诈骗的弹出窗口。

因此,您可以根据以下用户查询推文搜索:

http://search.twitter.com/search.json?q=from:stevejobs&callback=

您还可以像这样查询用户:

http://api.twitter.com/1/users/show/stevejobs.json?&callback=

第一个查询将返回推文,不会要求输入密码,因为受保护的用户不会出现在搜索中。可以工作,但不会返回用户的位置和元数据。

第二个查询不返回推文,但会返回受保护的布尔值。

因此,如果你把它放在一起,你就可以得到一个完整的搜索。

我希望有人觉得这很有用。我一直在谷歌上搜索和阅读API。在我写完这个函数后,我会回到这里发布它。