セッションの代わりに FB.getLoginStatus が使用されていると思いますか?
FB.getLoginStatus
ログイン ステータスに基づいて訪問者のエクスペリエンスを最適化するために使用されるため、「セッション」に代わるものではありません。
ユーザーが自分の Web サイトに新しいページを入力するたびに、FB.getLoginStatus を確認する必要があります。すべてのページで JavaScript SDK を初期化する必要があるということですか? ログインステータスを確認するためだけに、各ページに50行のコードが必要です...
SDK を使用するには、Javascript SDK の初期化が必要です。Facebook はすでに SDK を非同期的にロードしているため、ページ リソースをブロックしないため、 コードの行数に問題はありません。
FB.getLoginStatus
最初のポイントとして、ページの読み込み時に毎回呼び出す必要はなく、Facebook は関連ドキュメントで既にこれを述べています。
いつでも呼び出すことができますがFB.getLoginStatus
(たとえば、ユーザーがソーシャル アクションを実行しようとしたとき)、ほとんどのソーシャル アプリは、ページが読み込まれた後、できるだけ早くユーザーのステータスを知る必要があります。この場合、明示的に呼び出すのではなく、呼び出し時にFB.getLoginStatus
設定することで、ユーザーのステータスを確認することができます。status: true
FB.init
この呼び出しの応答を受け取るには、
auth.statusChange
イベントをサブスクライブする必要があります。このイベントによって渡される応答オブジェクトは、FB.getLoginStatus
明示的に呼び出すことによって返されるものと同じです。
見落としているかもしれないものの 1 つは、PHP-SDKです。
Facebook SDK for PHP は、Facebook SDK for Javascript と連携して、アプリのクライアント側とサーバー側の両方でシームレスなセッション管理を提供できます。
これにより、ページの読み込み時 (前) にユーザーのステータスを把握し、それに応じてユーザー エクスペリエンスをカスタマイズし、Javascript SDK によってトリガーされるステータスの変更を待つことができるため、作業が楽になります。