2015-07-10 5 views
2

У меня есть этот метод, и я хочу получить электронное письмо человека и отправить email = undefined.Использование API facebook javascript получение электронной почты

Первый Try:

 function testAPI() { 
    FB.login(function(response) { 
    if (response.authResponse) { 
     console.log('Welcome! Fetching your information.... '); 
     FB.api('/me', function(response) { 
     console.log('Good to see you, ' + response.email + '.'); 
     alert('Good to see you, ' + response.email + '.'); 
     }); 
    } else { 
     console.log('User cancelled login or did not fully authorize.'); 
    } 
    }, {scope:'email'}); 

Я искал, и я обнаружил, что я должен использовать {Область применения: изображение}, и если я положил его, не показывают мне предупреждение

ответ

6

Ваш синтаксис является неправильным, это правильный один:

function testAPI() { 
    FB.login(
     function(response) { 
      if (response.authResponse) { 
       console.log('Welcome! Fetching your information.... '); 
       FB.api('/me', function(response) { 
        console.log('Good to see you, ' + response.email + '.'); 
        alert('Good to see you, ' + response.email + '.'); 
       }); 
      } else { 
       console.log('User cancelled login or did not fully authorize.'); 
      } 
     }, 
     {scope:'email'} 
     ); 
} 

где {scope:'email'} находится внутри ) в качестве второго аргумента FB.login

+0

thans теперь у меня есть правильный метод, но это не распространяется показать мне предупреждение ... Любая идея? У меня есть кнопка loggin

+0

обновите свой вопрос с помощью всего обновленного кода. –

+0

ok Я обновил его –

24

Замена этого

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

с этим

FB.api('/me?fields=id,name,email,permissions', function(response) { 
    console.log(response.name); 
    console.log(response.email); 
    // ... 

я могу получить электронную почту пользователя.

+0

Это правильный ответ. Благодарю. –

+0

Спасибо, я установил разрешения, но я пропустил параметры в вызове –

+0

Спасибо. Наконец, я нашел правильный ответ для получения электронной почты. – Xinan

4

Или используйте

FB.init('/me', {"fields":"id,name,email,first_name,last_name"}, function(response){ 
console.log(response.email); 
}); 
Смежные вопросы