首页 > 解决方案 > javascript 和 Facebook 登录 API:获取用户的电子邮件

问题描述

几个月前,我创建了一个带有 FB 身份验证的网站,它使用了这个:

function setElements(isLoggedIn){
    if(isLoggedIn){
        FB.api('/me?fields=name,email',function(response){
            if(response && !response.error){
                $.ajax({                                      
                    url: 'ajax.php',        
                    type:"POST",
                    data: { name: response.name, email: response.email},
                    success: function(response){        
                    } 
                }); 
            }
        })
    }
}

现在我正在尝试创建一个新的。它仍然可以使用相同的脚本,但现在我没有同时获得名称和电子邮件,而是只收到电子邮件。

如果我登录到控制台“response:name”,我明白了,但“response.email”显示“未定义”。

也许他们几个月后改变了获取电子邮件的方法(出于隐私原因或其他原因)。有人可以告诉我如何解决这个问题吗?

谢谢。

标签: javascriptfacebook

解决方案


所以这给了我答案,事实上,它根本不清楚。这不是关于代码,而是关于 Facebook 开发界面。

Unity 中的 Facebook Graph Api 未授予电子邮件权限

问题已解决,谢谢。

PS:API 的大多数文档都具有误导性,因为他们说电子邮件不需要任何许可,因为它是标准配置文件数据(姓名、ID、电子邮件)的一部分。但它需要一个,而且只有一个地方可以改变它。


推荐阅读