facebook - getLoginStatus 总是返回 not_authorized

标签 facebook authentication sdk

我不熟悉使用 Facebook SDK 开发网站。所以请多多包涵。

下面是我用于验证我是否已登录 Facebook 的简单代码。 出于某种原因,我总是收到“not_autherized”响应,即使我是我的应用程序的唯一开发者。我提供的应用程序编号是正确的。

<!DOCTYPE html>
<html lang="en">
  <head>
  </head>
  <body>
    <div id="fb-root"></div>
    <script>
      window.fbAsyncInit = function() {
          // init the FB JS SDK
          FB.init({
              appId      : 'censored app id', // App ID from the app dashboard
              status     : true,              // Check Facebook Login status
              cookies    : true,
              xfbml      : true               // Look for social plugins on the page
          });

          FB.getLoginStatus(checkLoginStatus);
          function checkLoginStatus(response) {
              if (response && response == 'connected') {
                  alert('User is authorized!');
              } else {
                  alert('User not authorized!!!');
              }
          };

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

      // Load the SDK asynchronously
      (function(d, s, id) {
          if (d.getElementById(id)) return;

          var js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js";

          var fjs = d.getElementsByTagName(s)[0];
          fjs.parentNode.insertBefore(js, fjs);
      }(document, 'script', 'facebook-jssdk'));
    </script>
  </body>
</html>

有什么我忽略的吗?

非常感谢:)

最佳答案

一个 friend 帮我解决了这个问题。他非常有帮助地指出了一些 Facebook 忽略记录的内容。 当您创建一个新的 Facebook 应用程序时,管理员和开发人员不会自动授权它。授权应用程序是存在于“帐户设置->应用程序”列表中的应用程序。如果它不在这个列表中,那么它就没有被授权。

这意味着您需要在代码中的某个位置调用 FB.login() 以弹出用户授权窗口。

请注意,这应该通过按钮调用。否则,弹出窗口可能会被阻止。

希望这对我以外的其他人有帮助。

干杯:)

关于facebook - getLoginStatus 总是返回 not_authorized,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18035382/

相关文章:

iphone - 错误 : This endpoint has been deprecated

ios - 在 Facebook 页面上发布视频

ios - 如何在 Swift 中为 iOS 创建框架/库,以用于其他项目?

mysql - 仅在 MySQL 中插入一次或更新(如果存在)- Facebook 应用程序

web-services - 使用 CXF 的 Java 抢占式身份验证 Web 服务消耗

session - session 是否用于 REST 身份验证?

authentication - 关于 Azure SQL 上的用户身份验证

javascript - 如何使用 JS SDK 发布 Facebook 分数,而不对应用程序访问 token 进行硬编码?

facebook - 支持 Facebook 的应用程序的双用 iFrame + 外部身份验证的最佳实践

iphone ShareKit 与 facebook 的视频上传?