FBJSBridge.js は SDK に組み込まれています。com.facebook.graph.core.FacebookJSBridge.as を見ると、FBJSBridge.js であった JavaScript のブロック全体が com.facebook.graph.Facebook.as のコンストラクターの ExternalInterface に追加されていることがわかります。
私は一日中これに苦労しています。私は Facebook.init() によって生成された http GET を見てきましたが、タイムアウトになるまで待機しているように見え、その時点で別の GET が生成されます。正常に戻ることはありません。そこにあるAPPID、APIKEY、およびあらゆる種類のパラメーターの組み合わせを試しましたが、戻ってくるのを見たことはありません。私は、それがどのように機能するかを結論付けなければなりません。そうでない場合は、それが機能する方法です。:-/
とにかく、Facebook.handleSessionChange() をトリガーする「auth.sessionChange」イベントを init がサブスクライブする FacebookJSBridge.as のその JS ブロックの FBAS 内に表示されます。コールバックが呼び出される場所であることがわかります。秘訣は、セッションが変更されるたびに呼び出されることです。そのため、次にイベントが発生するのが FB.init() からの応答によるものでなくても、その時点でコールバックが呼び出されます。
Facebook.init() を呼び出す前に「auth.sessionChange」の独自のハンドラーを設定し、「cookie」を true に設定すると、Cookie が作成された後、init を呼び出した直後に sessionChange イベントが発生します。ただし、GET が RESPONSE を取得しないため、Init のコールバックはまだ呼び出されません。
Facebook.addJSEventListener("auth.sessionChange", onSessionChange);
Facebook.init(_appID, onInitFacebookConnect,
{cookie: true,
appId: _appID,
perms: "user_birthday,read_stream,publish_stream"});
そのチュートリアルにある例は機能するかもしれませんが、実際にアプリを組み立てる際に使用するものではありません。そうしないと、常にボタンをクリックして fbconnect をトリガーすることになります。oauth2 は、「接続」するたびにボタンをクリックする必要がないという望ましい動作を実現する方法のようです。oauth2 からセッションキーを取得し、実行しようとしていることに最も便利な方に応じて、Flash/Facebook GRAPHSDK または JS を使用できます。
これが役立つかもしれません:
http://blog.yoz.sk/2010/05/facebook-graph-api-and-oauth-2-and-flash/