Facebook不会为用户返回电子邮件?

时间:2015-08-07 12:58:35

标签: php facebook

这是我用来从Facebook获取信息的代码:

$fbUsrId  = $facebook->getUser();
$loginUrl = $facebook->getLoginUrl(
        array(
            'scope' => 'email'
        )
);

if ($fbUsrId) {
    $fbUsr = $facebook->api('/me');
    var_dump($fbUsr);
}

如果我在现场测试它工作正常,但是从localhost Facebook只返回用户的姓名和电子邮件:

array (size=2)
  'name' => string 'xxx xxx' (length=18)
  'id' => string 'xxx' (length=15)

1 个答案:

答案 0 :(得分:3)

这里可能有两件事:

  1. 用户需要授予您的应用email权限。
  2. 如果您使用的是v2.4 of the Graph API,则应使用?fields=field1,field2语法声明您希望API返回的所有字段。这意味着您必须明确指定字段,如/v2.4/me?fields=name,email等。