热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Firebase帐户链接错误

如何解决《Firebase帐户链接错误》经验,为你挑选了1个好方法。

因此,当您尝试使用其他auth方法登录应用时,例如,首先用户使用Google,现在他使用FB并且这2个帐户拥有相同的邮件,您会收到该错误

auth/email-already-exists

问题是,如果你有3个以上的auth方法,那个错误信息不是非常具体的,开发一个处理这种情况的逻辑可能有点棘手.你是如何解决这个问题的?



1> bojeil..:

firebase-admin sdk中抛出了email-already-exists.我不认为它是在客户端SDK中引发的.对于客户端SDK,将现有帐户链接到另一个帐户或使用另一个帐户存在的新帐户登录时会引发以下错误:

AUTH /帐户存在与 - 不同-凭证

AUTH /凭据已在使用

AUTH /电子邮件已经在使用

在上述所有情况中,错误可能包含其他字段:

error.email:您尝试登录的相关凭据的电子邮件

error.credential:凭据本身(通常为OAuth凭据返回)

您可以查找现有帐户以查找适用于它的提供商:

firebase.auth().fetchProvidersForEmail(error.email)
  .then(function(providers) {
    // Providers would be an array of the form:
    // ['password', 'google.com']
  });

对于auth/account-exists-with-different-credential,您可以使用该提供程序登录,如果需要,可以将error.credential链接到已登录的用户.

firebase.auth().currentUser.link(error.credential);

如果链接时发生错误(auth/credential-in-use),您可以直接使用该凭据登录

firebase.auth().signInWithCredential(error.credential):


推荐阅读
author-avatar
sfktrd
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有