[英]Prompt user for email when signup with facebook and removed access to email
我正在构建一个Rails应用程序,并使用usign设计和omniauth-facebook进行Facebook身份验证。
当用户使用facebook注册时,facebook会提示用户授予对我们请求的字段的访问权限。
如果用户未选中电子邮件字段,则Facebook不返回电子邮件。 但是设计需要电子邮件字段来创建用户。 我该如何处理这种情况?
如果用户拒绝传达其电子邮件,无论如何要求电子邮件都不会令他感到高兴...
最好的做法是尊重这一点,并进行迁移以消除对电子邮件字段的要求。
change_column :users, :email, :string, null: true
不要忘记也要远程索引和foreign_keys
为了标识您的用户,我建议您将一个Identity
模型与其关联,该模型将处理以下返回字段: provider_id, provider_name, name, username
等。因此,您可以轻松添加更多社交标识。
如果您可以不使用电子邮件而生活,那么@gdurelle可以使用,但考虑到这种可能性极小,因为电子邮件在应用程序中用于与用户通信的特定目的而被使用,当用户拒绝提供电子邮件时,您可能希望采用以下选项之一允许使用电子邮件地址,
当用户返回到您的应用程序时,告诉他们他们不能没有他们才能注册,并且必须使用它们才能使用应用程序。 这样,还可以让他们知道您拥有适当的隐私和数据保护政策,他们不必担心
如果用户仍然拒绝给他们一个选择,而无需使用Facebook和简单的电子邮件/密码方式进行注册,然后在您已经拥有电子邮件地址的情况下向Facebook申请权限
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.