Подтвердить что ты не робот

GetLoginStatus всегда возвращает not_authorized

Я новичок в разработке сайтов с помощью SDK для Facebook. Поэтому, пожалуйста, медведь со мной.

Ниже приведен мой простой код для проверки того, что я зарегистрирован в 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>

Есть ли что-то, что я упустил?

Очень ценится:)

4b9b3361

Ответ 1

Друг помог мне с этим. Он очень хорошо указал на то, что Facebook забыл документировать. Когда вы создаете новое приложение для facebook, он НЕ авторизован администратором и разработчиками. Авторизованное приложение - это приложение, которое существует в списке "Настройки учетной записи → Приложения". Если он отсутствует в этом списке, он не разрешен.

Это означает, что вам нужно вызвать FB.login() в какой-то момент вашего кода, чтобы всплывать окно авторизации пользователя.

Помните, что это нужно вызывать с помощью кнопки. В противном случае всплывающее окно может быть заблокировано.

Надеюсь, это поможет кому-то другому, кроме меня.

Приветствия:)