もの凄い時代遅れな事は認識しつつ、所用でjQueryからTwitterAPIを使ってみる必要が出てきたので、テストがてら組んでみた。基本的に個人的備忘録。
今はjQueryとかライブラリがあるからもの凄い簡単だね。この先、言語を覚えるんじゃなくてフレームワークだけを覚えて構築していく人と、プログラミングをする人とにどんどん分かれていくんだろうな…。と脱線した。
TwitterのAPI仕様を確認してみる
TwitterのAPIを和訳してくれている人がいるので感謝をしつつ見てみる。
http://watcher.moe-nifty.com/memo/2007/04/twitter_api.html
と言っても今回はフォローしている人のタイムラインをだらだらと表示するだけなので簡単。
http://twitter.com/statuses/friends_timeline.json
ってアクセスするだけでOKらしい。jsonの部分はxmlとかrssとか指定できる。それ以外にも取得件数とかを引数で設定可能。
jQueryで外部ドメインへアクセス
あれ、そういえばjQueryで外部のドメインへアクセスできたっけ?と思いつつ調べていたら、jQuery1.2からは読み込めるようになっているらしい。素晴らしい。これでクロスドメイン問題はあっさり解決。明らかに時代に置いて行かれている。
$.getJSONについて
http://semooh.jp/jquery/api/ajax/jQuery.getJson/+url,+data,+callback+/
$.getJSON('http://twitter.com/statuses/friends_timeline.json?count=100&callback=?', function(json) {
$.each(json, function(i,item){
$("#twitter").append('<dt>'
+'<img src="'
+item.user.profile_image_url
+'" width="48" height="48" alt="'
+item.user.screen_name
+'" /> '+item.user.name+'</dt>'
+'<dd>'+item.text
+'<br />'
+'[<a href="http://twitter.com/'
+item.user.screen_name+'/status/'
+item.id+'">'
+'Permalink</a>] '+item.created_at+'</dd>');
});
})
こんな感じでOK。ブラウザでTwitterにログインをしている人はそのまま自分のフォローしているタイムラインが表示され、ログインしていない場合はBASIC認証が求められる。
サンプル