私が構築している新しい Web サイトにFacebook Connectを使用することを検討していますが、Facebook API は少し不安定なようです。
私が使用しているコードは基本的なものですが、サンプル アプリケーションの「therunaround」にも同様の問題があります。
たとえば、友達リストが常に読み込まれるとは限らず、ログインしている Facebook ユーザーが常に検出されるとは限りません。
これらの問題は、私が始めたばかりだからですか?
私が構築している新しい Web サイトにFacebook Connectを使用することを検討していますが、Facebook API は少し不安定なようです。
私が使用しているコードは基本的なものですが、サンプル アプリケーションの「therunaround」にも同様の問題があります。
たとえば、友達リストが常に読み込まれるとは限らず、ログインしている Facebook ユーザーが常に検出されるとは限りません。
これらの問題は、私が始めたばかりだからですか?
はい、あなたが説明する問題は、APIを正しく使用していないことが原因である可能性があります。
Facebook Connectはまだ非常に新しく、時折問題が発生しますが、一般的にはかなり安定しており、多くの主要なサイトで実装されています。
この開発者の投稿はあなたの問題に関連している可能性があります:(From: http: //www.facebook.com/developers/message.php)
Facebook Connect JS APIを使用する前に、機能がロードされていることを確認してください。2009年2月26日午後1時35分
ほとんどすべてのFacebookConnectのJSAPIは、FB.init()を呼び出した後に非同期でロードされます。非同期性のため、これらの呼び出しを行った直後にJSAPIを使用できる必要はありません。FB.ensureInitまたはFB.Bootstrap.requireFeaturesを使用して、JSAPIを使用する前にそれらがロードされていることを確認する必要があります。
これをより詳細に説明するwikiドキュメントがあります。ただし、FB.initを呼び出した直後に、一部のConnectアプリがFB.Connect。*やFB.Facebook。*などのConnectJSAPIを呼び出していることがわかりました。このアプローチでは、関数がまだロードされていない可能性があるため、断続的な障害が発生します。
昨夜のプッシュの前に、FeatureLoader.js.phpのバグを修正しました。このバグでは、Connect機能の非同期読み込みが常に自動的に開始されていました。バグが修正された後、ロードする前にJS APIを呼び出していたコードは、失敗する可能性が高くなります。ConnectアプリがConnectJS関数に対して定義されていない関数を取得していることに気付いた場合は、コードをチェックして、機能が読み込まれるのを待ってから使用してください。