今までタイムラインはこのように取得していましたが。
http://twitter.com/statuses/user_timeline/xxxxxxxxxxxxxxx.json
こうなります。
https://api.twitter.com/1/statuses/user_timeline.json?screen_name=xxxxxxxxxxxxxxxxx
リクエストURLに「1」と書いてありますが、これはTwitterAPIのバージョン1を使用しているということです。
すでに2013年3月にはバージョン1も停止するとアナウンスされているので、この方法も以降は使用できなくなります。
緊急で対応しなくてはいけない場合のみご使用ください。
今後は1.1を使用してください。
今後はすでに公開されているバージョン1.1を使用することになります。
1.1ではすべてのリクエストにOAuth認証が必要になりますので、ちょっと大変ですね。
またウェイジェット版も新しいものが出ているので切り替える必要があると思います。
PHPでの実装方法はこちら
PHPでOAuth認証して自分のつぶやきを表示する [Twitter API 1.1 対応版]
コード
一応サンプルです。
html
<div id="twitter"></div>
javascript
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="../../js/php_date.js"></script>
<script type="text/javascript">
$(function() {
//IE対策
function replaceTwTimeStr(time){
var tArray = time.split(" ");
var timeStr = tArray[0] + " " + tArray[1] + " " + tArray[2] + " " + tArray[5] + " " + tArray[3] + " " + tArray[4];
return timeStr;
}
var dateObj = new Date;
$.getJSON('https://api.twitter.com/1/statuses/user_timeline.json?screen_name=xxxxxxxxx&callback=?', function (json) {
$(json).each(function(i){
var text = json[i].text;
//URLにリンクを付ける
text = text.replace(/(s?https?://[-_.!~*'()a-zA-Z0-9;/?:@&=+$,%#]+)/gi,'<a href="$1">$1</a>');
//ハッシュタグにリンク
text = text.replace(/#(w+)/gi,'<a href="http://twitter.com/search?q=%23$1">#$1</a>');
//リプライにリンク
text = text.replace(/@(w+)/gi,'<a href="http://twitter.com/$1">@$1</a>');
$("#twitter").append("<div><p>" +
text +
"</p><p class='date'>" + dateObj.format('Y-m-d H:i:s', replaceTwTimeStr(json[i].created_at)) + "<p></div>"
);
});
});
});
</script>
「screen_name=xxxxxxxxx」は表示するTwitterのアカウントに変更してください。
php_date.js に関してはこちらの記事を参考にしてください。
jQueryでTwitterの自分のつぶやきを表示する
