0

私はこのガイドに従っています: https://developers.facebook.com/docs/howtos/login/getting-started/

ログインに関しては、すべて正常に機能しています。私が理解していないのは、「セッション」の処理方法です。

  • セッションの代わりに FB.getLoginStatus が使用されていると思いますか?
  • ユーザーが Web サイトの新しいページに入るたびに FB.getLoginStatus 36 をチェックする必要があります。すべてのページで JavaScript SDK を初期化する必要があるということですか? ログイン状態を確認するためだけに、各ページに 50 行のコードが必要です。

PHP、MySQL、JavaScript、および HTML5 を使用しています。

4

2 に答える 2

1

セッションの代わりに FB.getLoginStatus が使用されていると思いますか?

FB.getLoginStatusログイン ステータスに基づいて訪問者のエクスペリエンスを最適化するために使用されるため、「セッション」に代わるものではありません。

ユーザーが自分の Web サイトに新しいページを入力するたびに、FB.getLoginStatus を確認する必要があります。すべてのページで JavaScript SDK を初期化する必要があるということですか? ログインステータスを確認するためだけに、各ページに50行のコードが必要です...

SDK を使用するには、Javascript SDK の初期化が必要です。Facebook はすでに SDK を非同期的にロードしているため、ページ リソースをブロックしないため、 コードの行数に問題はありません。

FB.getLoginStatus最初のポイントとして、ページの読み込み時に毎回呼び出す必要はなく、Facebook は関連ドキュメントで既にこれを述べています。

いつでも呼び出すことができますがFB.getLoginStatus(たとえば、ユーザーがソーシャル アクションを実行しようとしたとき)、ほとんどのソーシャル アプリは、ページが読み込まれた後、できるだけ早くユーザーのステータスを知る必要があります。この場合、明示的に呼び出すのではなく、呼び出し時にFB.getLoginStatus設定することで、ユーザーのステータスを確認することができます。status: trueFB.init

この呼び出しの応答を受け取るには、 auth.statusChangeイベントをサブスクライブする必要があります。このイベントによって渡される応答オブジェクトは、FB.getLoginStatus 明示的に呼び出すことによって返されるものと同じです。


見落としているかもしれないものの 1 つは、PHP-SDKです。

Facebook SDK for PHP は、Facebook SDK for Javascript と連携して、アプリのクライアント側とサーバー側の両方でシームレスなセッション管理を提供できます。

これにより、ページの読み込み時 (前) にユーザーのステータスを把握し、それに応じてユーザー エクスペリエンスをカスタマイズし、Javascript SDK によってトリガーされるステータスの変更を待つことができるため、作業が楽になります。

于 2013-01-20T07:22:46.223 に答える
0

Facebook Developers エリアから、Javascript SDK を呼び出さずにログインする方法に関するセクションがあるようです。

https://developers.facebook.com/docs/howtos/login/client-side-without-js-sdk/

ユーザーは、以降のリクエストに使用できる API アクセス トークンを取得します。

それが役立つことを願っています。

于 2013-01-20T01:09:23.833 に答える