2013-02-01 32 views
0

我正在使用以下代碼從特定用戶獲取Twitter數據並將其輸出到div,但它不起作用。沒有什麼是輸出,我真的不知道我是否正確地做這件事,我把這個片段從其他人那裏拿出來。我不確定是否需要使用twitter進行身份驗證,以及如何進行驗證?試圖從特定用戶獲取Twitter帖子

http://jsfiddle.net/elijahmanor/Nstnx/22/

的js

$(function(){  

    var twitterUsername = 'anderskitson' 
    var url = "http://twitter.com/status/user_timeline/" + 
     twitterUsername + 
     ".json?count=5&callback=?"; 
    $.getJSON(url, function(data) { 
     var twitterList = $("<ul />"); 
     $.each(data, function(index, item) { 
      $("<li />", { "text" : item.text }) 
       .appendTo(twitterList); 
     }); 
     $("#output").fadeOut("fast", function(){ 
      $(this).empty() 
       .append(twitterList) 
       .fadeIn("slow");    
     }); 

}); 

回答

2

您正在使用的URL的舊形式。該表單已被棄用。您還需要將callback=something添加到URL中,以便它將使用JSONP並越過交叉來源問題。另外,更新你的jQuery到最新版本。小提琴使用的是舊版本。

試試這個代碼:

$("#getTweets").bind("click", function() { 
    var twitterUsername = $("#twitterUsername").val(); 
    var url = "https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&count=2&callback=jsonp&screen_name=" + 
     twitterUsername; 
    $.getJSON(url, function(data) { 
     var twitterList = $("<ul />"); 
     $.each(data, function(index, item) { 
      $("<li />", { "text" : item.text }) 
       .appendTo(twitterList); 
     }); 
     $("#output").fadeOut("fast", function(){ 
      $(this).empty() 
       .append(twitterList) 
       .fadeIn("slow");    
     }); 
    }); 
}); 
+0

我試圖在我的jsfiddle,它似乎沒有工作,我只看到一個黑色線作爲我的輸出http://jsfiddle.net/BntSH/ –

+0

當我訪問我得到一個速率有限的錯誤,這可能是我的問題? –

+0

驗證。這樣你可以升級到API的1.1版本。 – Adam