1

JavaScript を使用した非同期 Facebook ログインを許可しようとしています。私は誰もが使用するのと同じコードを使用しています:

window.fbAsyncInit = function() {
  FB.init({
    appId      : 'XXX',
    channelUrl : '//' + host + '/channel.html',
    status     : true,
    cookie     : true,
    xfbml      : true
  });

  FB.Event.subscribe('auth.login', function(response) {
    // ajax call to find or create account
  });
}

ただし、以前に Facebook にログインしていない場合にのみ、コールバックが発生します。

auth.authResponseChange イベントはログイン ボタンのコールバックとして機能しますが、ページが読み込まれるたびに発生します。ボタンが実際にクリックされなかった場合、これはあまり役に立ちません。

本当に必要なのは、ログイン ボタンがクリックされたときだけ起動するコールバックです。

編集:

サイトの [サインアウト] ボタンで Facebook からサインアウトするようにすれば、すべてが一貫していますが、それはただイライラするだけです!

4

1 に答える 1

0

質問と回答: Facebook ログイン ボタンのコールバック関数

簡単な答え: 単純化します。ファンシーな .fb-login 要素 + イベントのサブスクライブの代わりに、画像ボタンでコールバックを使用します。

于 2012-12-13T23:01:02.703 に答える