我已经成功地使用firebase auth实现了电子邮件密码注册,其中我还实现了电子邮件验证。现在,每当用户登录时,都会检查电子邮件验证,然后只有用户继续。
现在我已经实现了谷歌登录/注册。其中我没有实现电子邮件验证,以减少用户的麻烦。但正如我在上面所说的,每当用户登录电子邮件验证时,只有当用户继续进行时,才会进行检查。
我想要的是,如果用户使用谷歌登录,电子邮件应该自动验证,而不是用户打开他的帐户来验证帐户。
如何可能在谷歌注册中实现电子邮件验证?
我已经在android中使用firebaseauth实现了这一点。
Firebase Auth提供了两种类型的身份验证:
- 电子邮件注册(发送一些验证邮件(
- 谷歌登录
所以我认为你可以做的是,无论何时谷歌登录完成,你都可以将其视为注册用户,因此你可以说他的电子邮件经过了验证。
如果任何用户正在进行电子邮件注册,那么他必须通过验证电子邮件的过程。
How is it possible to implement the email verification in google sign up?
我认为Firebase身份验证是不可能的,因为它不应该这样工作。
您可以使用admin SDK检查用户是否从谷歌登录,然后更新他的emailVerified
令牌:
admin.auth().updateUser(uid, { emailVerified: true })
一种解决方案是从FirebaseAuth.instance.signInWithCredential(credentials)
之后收到的结果中读取providerId
。在Google签名的情况下,提供商id将为google.com
。根据此值,您可以决定是否检查电子邮件验证。我希望我还能帮上忙。