javascript - FB.Event.subscribe auth.login 未触发

标签 javascript facebook facebook-javascript-sdk

我正在使用 facebook javascript sdk 连接到 facebook

但是 FB.Event.subscribe auth.login 没有被触发。

这是我正在使用的代码

    window.fbAsyncInit = function() {
    // init the FB JS SDK
    FB.init({
      appId      : 'xxxxxxxxx',                        // App ID from the app dashboard
      channelUrl : 'MychannelUrl', // Channel file for x-domain comms
      status     : true,                                 // Check Facebook Login status
      xfbml      : true                                  // Look for social plugins on the page
    });

    // Additional initialization code such as adding Event Listeners goes here
FB.Event.subscribe('auth.login', function(response) {console.log('event fired');
    if(response.status === 'connected') { console.log('connected');  }  
});

    }

      // Load the SDK asynchronously
      (function(d, s, id){
         var js, fjs = d.getElementsByTagName(s)[0];
         if (d.getElementById(id)) {return;}
         js = d.createElement(s); js.id = id;
         js.src = "//connect.facebook.net/en_US/all.js";
         fjs.parentNode.insertBefore(js, fjs);
       }(document, 'script', 'facebook-jssdk'));
    </script>

最佳答案

好吧,不要使用 auth.login,而是使用 auth.statusChange

FB.Event.subscribe('auth.statusChange', function(response) {
        if (response.status === 'connected') {
                      //the user is logged and has granted permissions
        } else if (response.status === 'not_authorized') {
              //ask for permissions
        } else {
              //ask the user to login to facebook
        }
    });

请记住,仅当用户状态发生更改时才会触发此操作,因此如果您想在首次运行时获取用户的状态,请使用 FB.getLoginStatus() 函数。此函数给出的响应与 auth.statusChange 事件、connectednot_authorized

相同

关于javascript - FB.Event.subscribe auth.login 未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15903738/

相关文章:

javascript - 无法创建 SSL/TLS 安全通道

javascript - 如何强制 Facebook JS-SDK 呈现动态添加的小部件?

javascript - 选择的 ng-options 不使用对象作为模型 [Angular 1.5]

javascript - jQuery自动加载记录滚动时生成相同的记录集,如何解决?

angularjs - 如何为社交分享设置angularjs单页应用程序

PHP 网站 facebook 登入

javascript - fb.login 在后台运行对话框?

javascript - vanilla JavaScript 当函数完成时,做一些事情

javascript - 为用户触发推送客户端事件

facebook - 如果我使用 Facebook 进行身份验证,常规 HTTP 可以吗?