こんばんは、ritouです。
Y!JのSocial APIやっとキター! もう一般開発者には公開されないものだと思ってたー! http://developer.yahoo.co.jp/webapi/social/
https://twitter.com/#!/ritou/status/184909742144094208
ということで、みんな使ってるかどうかは別としてY!JのプロフィールなどのAPIが利用できるようになったようです。
http://developer.yahoo.co.jp/webapi/social/
Y!JのOAuthといえば"まだまだ現役OAuth 1.0a"ということで、PECL OAuth使えば簡単そうだという1年ちょい前の自分のエントリを信じて試してみます。
PECL OAuthならひと癖あるY!JのOAuth 1.0aの実装も簡単っぽい - r-weblife
今回はこれらのAPIをたたいてみます。
- http://developer.yahoo.co.jp/webapi/social/profiles/v1/profile.html
- http://developer.yahoo.co.jp/webapi/social/profiles/v1/connections.html
- http://developer.yahoo.co.jp/webapi/social/status/v1/status.html
- http://developer.yahoo.co.jp/webapi/social/updates/v1/updatesconnections.html
サンプルアプリケーションの登録
まずはアプリケーションを登録してConsumerKey/ConsumerSecretを取得します。
https://e.developer.yahoo.co.jp/webservices/register_application
たたきたAPIに応じて今回は次のスコープを利用します。
- お客様のプロフィール情報参照機能
- お客様のひとこと関連機能
- 近況、活動関連機能
ひとこと、近況についてはREAD/WRITEの区別はありません。気になる方は文句言えばいい。
登録完了するとこんな感じに表示されます。
サンプルアプリケーションを使ってみる
とりあえずAPIたたくサンプルアプリケーションはこちら。
http://www8322u.sakura.ne.jp/pecl_oauth_yahoojp_socialapi_sample/
レスポンスなどはドキュメントに書いてあります。XMLでもJSONでもJSONPでもいけそうですね。
おっと、、、
ユーザーの友だち
array (
'connections' =>
array (
'start' => '1',
'total' => '0',
'count' => '0',
),
)・・・
ユーザーの友だちの近況
array (
'updates' =>
array (
),
'start' => '1',
'count' => '0',
'total' => '0',
)
これは私の人間関係のバグですね。涙目。
1YID複数プロフィール対応への対応
以前、興味深いと感じていたこちらの対応もされていました。
Yahoo! JAPANの複数プロフィール対応は実に興味深い - r-weblife
何言ってるかわからないと思うので説明しますと、Y!Jは一つのYIDに対してニックネームなるものを作ることができ、それにプロフィールを作成することができるようになっています。
私もニックネームを作ってみたところ、同意画面で選択を求められました。
すばらしいですね。この調子でOpenIDの方も対応してくれるといいと思います。
ソース
とりあえず動きそうなソースはこちら。PECL OAuthなら簡単でした。
https://gist.github.com/2225042
みなさん、年度末で暇な方は触ってみてはいかがでしょうか?
ではまた。