调用FB.init()之前调用FB.getLoginStatus()

chr*_*ian 14 javascript jquery facebook

我想检查用户是否使用Facebook JavaScript JDK和jQuery登录facebook.但即使超时10秒,我收到此错误消息:

在调用FB.init()之前调用FB.getLoginStatus().

这是我的代码:

<script type="text/javascript" src="/js/jquery-1.2.3.pack.js" />
<div id="fb-root"></div>
<script src="http://connect.facebook.net/de_DE/all.js">  </script>
<script type="text/javascript">
    jQuery('document').ready(
    function(){
        FB.init({
                status : true, 
                cookie : true, 
                xfbml  : true 
        });

        setTimeout(function(){

            FB.getLoginStatus(function(response) {
                if (response.session) {
                      jQuery('div#likeButtonWhatsThisText').remove();
                }
            });         
        }, 10000)       
    }
    )
</script>
Run Code Online (Sandbox Code Playgroud)

有关如何使这项工作的任何想法?

谢谢基督徒

Awa*_*rni 23

嗨,我认为您在不传递应用程序ID的情况下调用fb.init.它应该是这样的

FB.init({
        appId: "Your API ID",
        status: true,
        cookie: true,
        xfbml: true
});
Run Code Online (Sandbox Code Playgroud)

我希望这会奏效.


Mau*_*ord 6

不是专业人士,但你尝试过:

FB.Event.subscribe('auth.login', yourFunc); 
Run Code Online (Sandbox Code Playgroud)

并且yourFunc应该有一个arg(响应),您可以在其中检查:

response.status == 'connected'
Run Code Online (Sandbox Code Playgroud)