javascript - FaceBook 登录按钮错误 : FB. 在调用 FB.init() 之前调用了 login()

标签 javascript facebook

执行此代码后出现此错误:

 <div id="fb-root"></div>
 <script src="http://connect.facebook.net/en_US/all.js"></script>
 <script>
   FB.init({
     appId  : 'realIdInTheCode',
     status : true, // check login status
     cookie : true, // enable cookies to allow the server to access the session
     xfbml  : true  // parse XFBML
   });
 </script>

<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#appId=realIdInTheCode&amp;xfbml=1">
</script><fb:login-button show-faces="false" width="200" max-rows="1"></fb:login-button>

我的想法是在 login() 之前调用 init()

但我仍然收到错误:错误:在调用 FB.init() 之前调用了 FB.login()。

此时我有点困惑,所以非常感谢您的帮助:)

最佳答案

我曾经认为 FBML 已被弃用。我刚刚测试过,这对我有用

<html>
    <head>
    </head>
    <body>
        <div id="fb-root"></div>
        <script>
          //initializing API
          window.fbAsyncInit = function() {
            FB.init({appId: 'MYAPPID', status: true, cookie: true,
                     xfbml: true});
          };
          (function() {
            var e = document.createElement('script'); e.async = true;
            e.src = document.location.protocol +
              '//connect.facebook.net/en_US/all.js';
            document.getElementById('fb-root').appendChild(e);
          }());
        </script>

        <button type="button" onclick="fblogin();">Facebook Login</button>


        <script>
          //your fb login function
          function fblogin() {
            FB.login(function(response) {
                //User logged in!
                if (response.session) {
                    alert('YAY!');
                } else {
                // user cancelled login
                    alert('NAY!');
                }

            }, {perms:'email,read_stream,publish_stream'});
          }
        </script>

    </body>
</html>

    <html>
        <head>
        </head>
        <body>
            <script src="http://connect.facebook.net/en_US/all.js"></script>
            <script>
              FB.init({
                appId  : 'MYAPPID',
                status : true, // check login status
                cookie : true, // enable cookies to allow the server to access the session
                xfbml  : true  // parse XFBML
              });

            </script>
        <button type="button" onclick="fblogin();">Facebook Login</button>
        <script>
          //your fb login function
          function fblogin() {
              FB.login(function(response) {
                  //User logged in!
                  if (response.session) {
                      alert('YAY!');
                  } else {
                  // user cancelled login
                      alert('NAY!');
                  }

              }, {perms:'email,read_stream,publish_stream'});
            }
        </script>

    </body>
</html>

引用:

关于javascript - FaceBook 登录按钮错误 : FB. 在调用 FB.init() 之前调用了 login(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4909638/

相关文章:

javascript - 如何使用 Facebook React 更新视频源?

javascript - 当浏览器宽度低于950px时如何动态调用jquery函数?

javascript - 通过javascript创建一个spring表单并附加到div中

javascript - Angular : Conditional field doesn't work with server side

android - "Dialog failed with unknown"错误响应。 Facebook 应用程序邀请,在切换 fb 帐户时

ios - 获取 Facebook API 个人资料图片 ios Swift

java - 如何获取 Facebook 个人资料图片 URL

facebook - HTTP 响应 503,但是网站可以正常工作

javascript - 使用 Javascript 对鼠标悬停执行操作(否则如果)

javascript - 迭代包含美元金额的表列在添加时返回 NaN