2012-04-04 6 views
3

Я пытаюсь войти в Facebook вот мой код:Facebook Javascript SDK сообщение об ошибке локального

<body> 
<form id="form1" runat="server"> 
    <div id="fb-root"></div> 
    <script>  
     (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&appId=221385331301885"; 
      fjs.parentNode.insertBefore(js, fjs); 
    } (document, 'script', 'facebook-jssdk')); 
    </script> 
    <div class="fb-login-button" data-show-faces="false" data-width="300"></div> 
    <script> 
     window.fbAsyncInit = function() { 
      FB.init({ 
       appId: '221385323101885', // App ID 
       status: true, // check login status 
       cookie: true, // enable cookies to allow the server to access the session 
       xfbml: true // parse XFBML 
      }); 

      // Additional initialization code here 
     }; 

     // Load the SDK Asynchronously 
     (function (d) { 
      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.js"; 
      ref.parentNode.insertBefore(js, ref); 
     } (document)); 
    </script> 
</form> 
</body> 

Когда я запускаю этот код я получаю сообщение об ошибке:

enter image description here

Я пытался отлаживая URL-адрес в окне с помощью https://developers.facebook.com/tools/debug, однако он продолжал говорить, что URL-адрес не является доступным:/URL-адрес ниже, если вы хотите попробовать его отладить:

https://www.facebook.com/dialog/oauth?api_key=221385331301885&app_id=221385331301885&client_id=221385331301885&display=popup&domain=127.0.0.1&locale=en_GB&origin=1&redirect_uri=https%3A%2F%2Fs-static.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%23cb%3Df4b3e7f08%26origin%3Dhttp%253A%252F%252F127.0.0.1%253A81%252Ff22a06766%26relation%3Dopener%26transport%3Dpostmessage%26frame%3Df23609e538&response_type=token%2Csigned_request&sdk=joey 

Я изменил свой файл hosts, чтобы добавить запись для 127.0.0.1 localhost.local в соответствии с настройками моего приложения Facbook. Ниже приведены скриншоты моего файла хостов и мои настройки приложения Facebook:

Hosts File

Facbook App Settings

Как вы можете видеть, домен является одинаковым в обоих файл хостов и настройки facebook приложение. Любые идеи о том, как я могу решить эту проблему? благодаря

ответ

3

Я думаю, что нашел вашу проблему, но я не знаю, почему это происходит ...

я пытался сделать именно то, что вы сделали, но вместо того, чтобы с Mobile Web я имел Http: // localhost в Сайт вариант (и мобильный был пуст). И все сработало хорошо.

Когда я включил его от Сайта на Mobile Web Я получил ту же ошибку, вы сообщили. У вас есть , чтобы использовать мобильный вариант?

Кроме того, вы загружаете Fb SDK дважды, не знаю, почему, первый раз с этим источником:

//connect.facebook.net/en_GB/all.js#xfbml=1 & APPID = 221385331301885

А потом снова с этим источником:

"//connect.facebook.net/en_US/all.js"

В чем смысл? Что не так с этим просто:

<div id="fb-root"></div> 
<div class="fb-login-button" data-show-faces="false" data-width="300"></div> 
<script> 
    window.fbAsyncInit = function() { 
     FB.init({ 
     appId: '221385323101885', // App ID 
     status: true, // check login status 
     cookie: true, // enable cookies to allow the server to access the session 
     xfbml: true // parse XFBML 
     }); 

     // Additional initialization code here 
    }; 

    // Load the SDK Asynchronously 
    (function (d) { 
     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.js"; 
     ref.parentNode.insertBefore(js, ref); 
    } (document)); 
</script> 

Надеюсь, он решит вашу проблему.

+0

Я вопрос, я добавил HTTP: //localhost.local в качестве веб-сайта URL, но до сих пор я получаю ' GET http://static.ak.facebook.com/connect/xd_arbiter.php?version = 28 403 (Forbidden) ' –

+0

Я создал виртуальный хост" localhost.local "и использовал выше код –

3

Добавить в Site URL : http://localhost работает для меня

0

Теперь вы должны создать виртуальный хост в Apache

Смежные вопросы