未连接到任何电子邮件地址的 facebook 帐户的 django-allauth facebook 登录问题
django-allauth facebook login issue with facebook accounts that is not connected to any email address
我有一个网站,用户只能使用 Facebook 登录。
大多数时候它工作正常。但有时,当用户使用 facebook 登录时,它会再次要求提供电子邮件地址。
但是我有一个新问题。 那些用手机号码创建的facebook,没有绑定任何电子邮件地址的人无法登录。
那么我该如何解决这个问题呢?
我正在使用 django-allauth 进行社交登录。
只是我的假设,但因为 facebook 不允许您再从 GRAPH 中检索 phone_number
,它将使用空白电子邮件,因此如果它通过,您将有重复的空白电子邮件
来自配置文档 https://django-allauth.readthedocs.io/en/latest/configuration.html
SOCIALACCOUNT_AUTO_SIGNUP (=True)
Attempt to bypass the signup form by using fields (e.g. username,
email) retrieved from the social account provider. If a conflict
arises due to a duplicate e-mail address the signup form will still
kick in.
因此,如果用户没有电子邮件,则需要手动输入电子邮件地址
我对此的建议是使用 allauth 的信号以某种格式保存电子邮件,例如 timestamp
和 pre_social_login
信号
https://django-allauth.readthedocs.io/en/latest/signals.html
我有一个网站,用户只能使用 Facebook 登录。 大多数时候它工作正常。但有时,当用户使用 facebook 登录时,它会再次要求提供电子邮件地址。
但是我有一个新问题。 那些用手机号码创建的facebook,没有绑定任何电子邮件地址的人无法登录。
那么我该如何解决这个问题呢?
我正在使用 django-allauth 进行社交登录。
只是我的假设,但因为 facebook 不允许您再从 GRAPH 中检索 phone_number
,它将使用空白电子邮件,因此如果它通过,您将有重复的空白电子邮件
来自配置文档 https://django-allauth.readthedocs.io/en/latest/configuration.html
SOCIALACCOUNT_AUTO_SIGNUP (=True)
Attempt to bypass the signup form by using fields (e.g. username, email) retrieved from the social account provider. If a conflict arises due to a duplicate e-mail address the signup form will still kick in.
因此,如果用户没有电子邮件,则需要手动输入电子邮件地址
我对此的建议是使用 allauth 的信号以某种格式保存电子邮件,例如 timestamp
和 pre_social_login
信号
https://django-allauth.readthedocs.io/en/latest/signals.html