0

我正在使用 JS SDK 绑定到 facebook。初始化(FB.init())后,我看到了登录按钮。点击它后,它提示我登录。然后,尽管我使用 FB.Event.subscribe() 将处理程序添加到 auth.login 事件,但在我登录后对话框就消失了。

请注意,我使用 html 中的标记包含 Facebook all.js 文件,该标记在此代码之前处理。

这是我的代码:

FB.init({

                            appId:myId,
                            channelUrl:myChannelUrl,
                            cookie:true,
                            status:true,
                            xfbml:true
                     });
            FB.Event.subscribe('auth.login',function(response) {
                            alert("your event finally fired!!!");
            });
            FB.Event.subscribe('auth.logout',function(){
                    alert("you logged out");
            });

现在,当我登录或注销时,什么都没有发生。facebook 对话框就这样消失了。如果我故意使用不正确的凭据尝试登录,对话框会正确拒绝该尝试,这证明该事物确实在与 facebook 通信。问题似乎是事件没有触发。

感谢您在这里的任何指导。

4

1 回答 1

1

请订阅此活动。

FB.Event.subscribe('auth.statusChange', handleStatusChange);    

在你的 javascript 中,

function handleStatusChange(response) {
if(response.authResponse ==  'connected')
//do something
else
//do something else
}

参考: http: //www.facebookmobileweb.com/hello/

于 2012-07-20T16:19:51.023 回答