我使用以下代码从特定用户获取twitter数据并将其输出到div,但它无效。什么都没有输出,我真的不确定我是否正确这样做,我把这个分叉从其他人那里分了出来。我不确定我是否需要通过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" );
});
});
答案 0 :(得分:2)
您使用的是旧形式的网址。该表单已被弃用。您还需要将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" );
});
});
});