2015-08-05 2 views
-1

Я пытаюсь реализовать подключение Facebook на своем веб-сайте для заполнения полей ввода.Facebook connect - Javascript

Но я не могу получить адрес электронной почты или фамилию и имя, несмотря на то, что мое приложение Facebook спрашивает, может ли он получить доступ к электронному адресу.

Вот мой сценарий:

<script> 
    window.fbAsyncInit = function() { 
     FB.init({ 
      appId  : '######', // App ID 
      status  : true, // check login status 
      xfbml  : true, 
      cookie  : true, 
      version : 'v2.4' // Version 
     }); 

    }; 

    function Login() 
    { 
     FB.login(function(response) { 
      if(response.authResponse) 
      { 
       getUserInfo(); 
      }else{ 
       console.log('User cancelled login or did not fully authorize.'); 
      } 
     },{scope: 'public_profile,email'}); 
    } 

    function getUserInfo() 
    { 
     FB.api('/me', function(response) { 

       document.getElementById("name").value = response.name; 
       document.getElementById("first_name").value = response.first_name; 
       document.getElementById("last_name").value = response.last_name; 
       document.getElementById("email").value = response.email; 

      FB.api('/me/picture?type=normal', function(response) { 

        var str ="<br/><b>Pic</b> : <img src='"+response.data.url+"'/>"; 
         str +="<input type='button' value='Logout' onclick='Logout();'/>"; 
        document.getElementById("status").innerHTML=str; 

      }); 
     }); 
    } 

    function Logout() 
    { 
     FB.logout(function(){document.location.reload();}); 
    } 

    // 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_EN/all.js"; 
      ref.parentNode.insertBefore(js, ref); 
    }(document)); 

</script> 

Может кто-нибудь помочь мне с этим?

ответ

1

Вы должны явно просит поля вам необходимо:

FB.api('/me?fields=email,...') 

Смотри раздел Choosing Fields в Using the Graph API док

Вы также можете попробовать свои запросы с помощью Graph API Explorer в инструмент & раздел поддержки на сайте разработчика FB

+0

Спасибо !!! Работает !!! – lBrowz