首页 > 解决方案 > 用户批准我的 Facebook 应用后无法收到用户的电子邮件

问题描述

我在 cURL 和 Facebook sdk 上工作了 5-6 年,完全没有遇到任何问题。我的应用在 Graph API 的 2.8 版本上。

但是现在,用户登录我的网站后,我突然收不到用户的电子邮件地址,并为他生成了一个唯一的个人令牌。

我的意思是我的范围是:public_profile、电子邮件。就这样。当我查看我的数据库并看到有空行的“电子邮件”时,我第一次注意到它。

所以我加入了 Auth0,以检查问题所在。而且在这个平台上,我无法获得任何电子邮件地址,尽管 Facebook 允许任何应用程序允许“电子邮件”权限,并且不需要他们进行任何额外的批准或审查。

我得到这个信息:

“sub”: “facebook|1031231212355512”,

“given_name”: “Ted”,

“family_name”: “Mosby”,

“nickname”: “tudalos98”,

“name”: “Ted Mosby”,

“picture”: “xxxxxxxx”,

“gender”: “male”,

“locale”: “en-US”,

“updated_at”: “2018-07-09T12:31:12.593Z”

}

如您所见,根本没有“电子邮件”行……</p>

我重新检查了 3 次以上,重新检查了自己并勾选了“电子邮件”框并重新检查了 url 中的范围参数,然后再登录到应用程序。

我还检查了 3 个不同的用户,所有 3 封经过验证的电子邮件。

真正奇怪的是,我不知道“昵称”行的含义是什么……我的意思是 facebook 不允许您选择“昵称”。只有您的名字和姓氏和您的用户名(紧跟在 facebook.com/myusername 之后)

奇怪的是这里提到的“昵称”,不是 facebook.com/ 之后的“用户名”,而是我的电子邮件地址的用户名。我是说:

我的E-mail地址是:

tudalos98@gmail。com

我的脸书短链接是:

facebook.com/ted.mosby.9

还有 facebook 获取的“昵称”:

“昵称”:“tudalos98”,

你认为问题出在哪里?

非常感谢。

标签: phpfacebookfacebook-graph-apifacebook-php-sdkfacebook-fql

解决方案


推荐阅读