Firebase链接多个身份验证提供程序而不匹配电子邮件

时间:2016-06-17 13:39:02

标签: firebase firebase-authentication

我一直试图找出一种方法来确定用户是否已在Firebase中使用相同的电子邮件创建,并且看起来似乎不可能。

这基本上意味着我需要为每个用户保存电子邮件,并检查Firebase数据库中是否已有电子邮件。

真的没有办法吗?

我看到所有这些帖子都有...如何将用户链接到另一个身份验证服务提供商,但是无法知道具有特定邮件的用户是否已经存在...

1 个答案:

答案 0 :(得分:1)

您无法将现有帐户与其他帐户相关联。您只能将新帐户链接到现有帐户。如果您希望在创建新帐户或将其链接到现有帐户之前检查是否已存在新帐户的电子邮件。 你可以致电https://firebase.google.com/docs/reference/js/firebase.auth.Auth#fetchProvidersForEmail 如果提供的电子邮件已存在,则会返回提供程序ID的数组。然后,您可以将用户登录到现有帐户并将新帐户链接到该帐户。 在Firebase控制台中禁用每个电子邮件的多个帐户时,fetchProvidersForEmail将按预期工作(默认行为,除非您从Firebase v2迁移)。