Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在调用FB.init()之前调用了FB.getLoginStatus()。我如何使用Facebook API?_Javascript_Facebook - Fatal编程技术网

Javascript 在调用FB.init()之前调用了FB.getLoginStatus()。我如何使用Facebook API?

Javascript 在调用FB.init()之前调用了FB.getLoginStatus()。我如何使用Facebook API?,javascript,facebook,Javascript,Facebook,我使用以下代码准备FaceBook API的使用: (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_GB/all.js#xfbml=1"; fjs.parent

我使用以下代码准备FaceBook API的使用:

(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_GB/all.js#xfbml=1";
    fjs.parentNode.insertBefore(js, fjs);
} (document, 'script', 'facebook-jssdk'));
但是,在加载文档时,我得到以下错误:

FB.getLoginStatus() called before calling FB.init().
我不明白这个信息。我在谷歌上搜索了这个问题,找到了一些论坛帖子,但不幸的是,它们根本没有帮助。我决定在这里发布一个关于这个问题的问题,因为我无法解决它,因为我对Facebook API一无所知。对不起,如果我的问题对任何人来说都太简单,请提前感谢您的回答

window.fbAsyncInit = function () {
    // init the FB JS SDK
    FB.init({
        appId: MS.FBAppID, // App ID from the App Dashboard
        //channelUrl: '//WWW.YOUR_DOMAIN.COM/channel.html', // Channel File for x-domain communication
        status: true, // check the login status upon init?
        cookie: true, // set sessions cookies to allow your server to access the session?
        xfbml: true  // parse XFBML tags on this page?
    });

    // Additional initialization code such as adding Event Listeners goes here

};

// Load the SDK's source Asynchronously
// Note that the debug version is being actively developed and might 
// contain some type checks that are overly strict. 
// Please report such bugs using the bugs tool.
(function (d, debug) {
    var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
    if (d.getElementById(id)) { return; }
    js = d.createElement('script'); js.id = id; js.async = true;
    js.src = "//connect.facebook.net/en_US/all" + (debug ? "/debug" : "") + ".js";
    ref.parentNode.insertBefore(js, ref);
} (document, /*debug*/false));

我必须使用为此应用程序创建的Facebook AppID作为AppID,并且必须确保域定义正确。

我有相同的Facebook日志

 ***FB.getLoginStatus() called before calling FB.init().***
当文件加载时。我发现在

js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1";

犯这个错误。删除
#xfbml=1
后,一切正常

正如它所说的,在任何其他
FB
函数之前,您需要调用
FB.init()
,它将初始化您的应用程序信息。你通过考试了吗?谢谢,我会试试的