FB API GRAPH:为什么我无法收到用户的电子邮件?

问题描述 投票:-1回答:1

我正在尝试检索用户登录我的网络应用程序的电子邮件;这是我的代码:

  FB.api('/me', function(response) {
    console.log(response.name + ', ' + response.email);
  });

用户名是正确的,但电子邮件结果为

未定义

我哪里错了?

javascript facebook-graph-api facebook-javascript-sdk
1个回答
1
投票

https://developers.facebook.com/docs/reference/javascript/FB.login/v3.2

在登录过程中要求获得email权限:

FB.login((response) => {
  // handle the response
}, {scope: 'email'});

此外,您需要询问您想要的字段:

FB.api('/me', {fields: 'name,email'}, (response) => {
    console.log(response.name + ', ' + response.email);
});

确保用户甚至有电子邮件,这不是必需的。并确保在登录弹出窗口中确实要求您获得email权限。

旁注:我只会使用console.log(response),因此您可以看到整个对象而不是一些undefined值。

© www.soinside.com 2019 - 2024. All rights reserved.