0

この私のコード:

   <div id="fb-root"></div>
   <body>
   <script>
            window.fbAsyncInit = function() {
                FB.init(
                {
                    appId: 'XXX',
                    status: true,
                    cookie: true,
                    xfbml: true,
        channelUrl: 'fbsite.url'

                });
            };

            (function() {
                var e = document.createElement('script');
                e.src = document.location.protocol + '//connect.facebook.net/en_US  /all.js';
                e.async = true;
                document.getElementById('fb-root').appendChild(e);
            }());
        //LOGIN FUNCTION 
   function login() {
    FB.login(function(response) {
        if (response.authResponse) {
            alert('Success!');
        }else{
            alert('Login Failed!');
        }
    }, {scope: 'email'});
 }

  </script>
  <div onclick="login();">Login with Facebook</div>

divでFacebookでログインをクリックすると、エラーが発生します。これは次のとおりです。

指定された URL は、アプリケーションの構成で許可されていません。: 指定された URL の 1 つ以上が、アプリの設定で許可されていません。ウェブサイトの URL またはキャンバスの URL と一致するか、ドメインがアプリのドメインのいずれかのサブドメインである必要があります。

何故ですか?

4

1 に答える 1

1

コールバック URL に問題がある可能性があります。Web サイトの URL を確認し、Facebook アプリケーションの作成時に指定したコールバック URL を確認してください。両方とも同じかサブドメインである必要があります (ベース ドメインは同じである必要があります)。localhost から fb login を呼び出す場合は、コールバック URL を localhost/.... としても提供します。

于 2013-07-11T13:07:28.443 に答える