0

次のコードを使用して、特定のユーザーから 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" );            
        });

});
4

1 に答える 1

2

古い形式のURLを使用しています。そのフォームは非推奨になりました。callback=somethingまた、JSONPを使用してクロスオリジンの問題を回避できるように、URLに追加する必要があります。また、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" );            
        });
    });
});
于 2013-02-01T20:40:46.907 に答える