もの凄い時代遅れな事は認識しつつ、所用で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認証が求められる。
サンプル