hagino3000's blog

平成アーカイブス (更新停止)

facebookのJavaScript SDKメモ

JavaScript SDK

facebookのリソースにJSだけでアクセスできる。

ドメインの登録

登録できるドメインは一つだけだが。salesforce.comと書いておけば、サブドメイン(e.g. na5.salesforce.com)でも動く。

認証

OAuth2を使っている。アクセストークンの寿命は2日半ぐらい? まだexpireした事が無いが、セッションオブジェクトにexpireというプロパティがありDateオブジェクトに突っ込むと時間がわかる。

回数制限

600 calls/600 secという説*1が流れているが、真相は不明。

SSL

最初にincludeするファイルを https://connect.facebook.net/${LOCALE}/all.js にすれば全ての通信はSSLでいける模様(画像以外)

FB.login

この時にアクセスしたいリソースを指定する。指定できるのはこのページに書いてある。Extended Permissions

// User streamへのアクセスとポストの許可を求める
FB.login(function(r) {
  if (r.session) {
    console.info('session has got');
  }
}, {perms:'read_stream, publish_stream'});
WALLの取得

Assasin's CreedのWallを取得するのはこんな感じ

FB.api('/assassinscreed/posts', { limit: 10 }, function(response) {
  for (var i=0, l=response.data.length; i<l; i++) {
    var post = response.data[i];
    if (post.message) {
      console.info('Message: ' + post.message);
    } else if (post.attachment && post.attachment.name) {
      console.info('Attachment: ' + post.attachment.name);
    }
  }
});
fb-root

documentのどこかに

<div id="fb-root"></div>

が無いと動かない。

よく使うURL

どこから辿ればいいかもうわからないので書いておく

自分が登録したアプリ一覧
http://www.facebook.com/developers/apps.php
自分が許可したアプリ一覧
http://www.facebook.com/settings/?tab=applications