我正在创建一个在PHP的网站,我想在我的网站使用Facebook登录。我已经在Facebook developer中创建了一个应用程序ID。Facebook登录是工作,但我想检索电子邮件id,这是在Facebook登录使用。
下面是我的JavaScript代码:
$facebook.api("/me").then(
function(response) {
console.log(response);
alert("Welcome " + response.email);
},
function(err) {
alert("Please log in");
}); 输出:未定义response.email。
在控制台日志中,我得到一个类似对象的对象{name:"xxx",id:"111"}
如何检索Facebook登录电子邮件id?
发布于 2016-03-11 20:16:27
facebook提供了所有公开的或Facebook批准的细节。因此,在这种情况下,您不能每次都获得email-id。假设一个用户没有在他的账户中使用电子邮件,或者电子邮件是私人的,那么你就不能得到他的电子邮件id。
致以问候。
发布于 2016-03-11 20:20:03
为了获取用户电子邮件,您需要执行以下步骤:
email权限。$facebook.api("/me") try call like like this $facebook.api("/me?fields=id,name,email")时,您应该会收到登录者的电子邮件。备注:
即使你已经设置了email权限,一些用户还是会使用他们的手机号码注册。由于用户名或某些用户希望通过设置隐私来将其电子邮件设置为私人电子邮件,因此,在这种情况下,您将不会收到获取用户电子邮件。
因此,如果您希望将用户保存在数据库中以供将来参考,请在id上工作,因为这是该用户的惟一标识符。
如果你想要用户的电子邮件,如果fb不提供,你可以明确地问。
希望这能对你有所帮助。
https://stackoverflow.com/questions/35939850
复制相似问题