Facebook电子邮件字段返回null(即使设置并接受"电子邮件"权限)第2部分

Igo*_*lov 7 facebook facebook-graph-api

这是一个描述我最初问题的主题的链接.

简而言之:问题是在某些情况下,facebook-graph-api不会返回用户的电子邮件地址.

其他stackoverflow伙伴建议使用他的Facebook电子邮件,如果他有一个用户名(即userName@facebook.com),我已经完成.但是如果facebook用户也没有"用户名"怎么办.

你会推荐什么?要在他询问他的电子邮件地址的页面上重定向他?

lin*_*0ff 2

Facebook API 不返回电子邮件地址的原因有多种。https://developers.facebook.com/bugs/298946933534016中列出了一些原因

提出了不同的解决方案来处理这种情况,就像在https://github.com/mkdynamic/omniauth-facebook/issues/61的讨论中一样

但我认为使用userName@facebook.com不是一个好的解决方案,因为它不是有效的电子邮件,并且userName可能也不可用,并且当您尝试向用户发送电子邮件时,它将无法发送,等等。

询问用户的电子邮件地址也不是一件好事,因为有些用户可能拒绝提供他们的电子邮件。

我建议构建这样一个假邮件,例如uid@facebook.yourdomain.com保证uid始终从 Facebook 返回的用户 ID,以及您的域的子域,您可以在其中按照您的意愿处理此类假电子邮件。