如何在FB连接中获取电子邮件地址?

时间:2010-10-25 12:34:31

标签: facebook

我们可以使用users.getStandardinfo获取电子邮件地址吗?

请帮我解决这个问题。

谢谢

1 个答案:

答案 0 :(得分:0)

你做不到。但是,您可以要求用户在他/她登录时提供它。

可以从用户表中获取proxied_email,您可以尝试:

$personArray = $facebook->api_client->users_getInfo( $fb_config->user_id, "last_name, first_name, birthday, hometown_location, current_location, is_app_user, proxied_email" );
$email = $personArray[0]['proxied_email'];
if(empty($email)){
    echo 'Proxied email was not retreived. Trying fql query...';
    $facebookFQLResultXml = $facebook->api_client->fql_query("SELECT proxied_email FROM user WHERE uid=".$fb_config->user_id);
    $email = $facebookFQLResultXml['proxied_email'];
}

但我不确定结果

因此,您可以获取代理电子邮件,并通过它与您联系 无法提取原始电子邮件:

proxied_email - A proxied wrapper alternative for contacting the user through email,

而不是直接调用notifications.sendEmail。如果用户分享了他或她的代理人 您的电子邮件地址,此地址也会显示在电子邮件字段中(请参阅下文)。

http://developers.facebook.com/docs/reference/rest/users.getInfo