处理已在使用的电子邮件地址-Firebase身份验证

Mar*_*ode 4 firebase firebase-authentication

我的应用程序具有通过Firebase集成的gmail和facebook身份验证。我注意到,如果有人注册了自己的gmail,然后又注册了Facebook,如果Facebook的电子邮件与他们的gmail相同,那么他们会收到错误消息:

“该电子邮件地址已被另一个帐户使用。”

唯一合理的方法是告诉用户使用不同的凭据登录吗?可能会显示诸如“电子邮件已在使用中,请使用其他帐户注册”之类的消息?

Ale*_*amo 5

有3种方法可以解决此问题。

第一个是验证电子邮件地址是否存在,然后显示一条消息。这就是你所说的。该消息由您决定。

第二种方法是使用户能够在每个电子邮件地址中拥有多个帐户。换句话说,如果用户使用gmail注册,然后使用Facebook注册,并且拥有相同的电子邮件地址,那么最终他将拥有2个不同的帐户。一个电子邮件地址,两个不同的帐户这不是一个好习惯,但是根据您的需要,您甚至可以使用它。

第三种方法是每个电子邮件地址只有一个帐户。这意味着您要防止用户使用具有不同身份验证提供程序的同一电子邮件地址创建多个帐户。这是常规做法,也是Firebase控制台中的默认规则。这意味着,您稍后将要与另一个提供者实施另一种身份验证,它将遵循相同的规则。在这种情况下,将只有一个电子邮件地址和一个帐户。

要启用或禁用此选项,请转到Firebase控制台,选择Authentication,选择SIGN-IN METHOD选项卡,然后在页面底部找到该Advanced部分。