Sol*_*orp 5 facebook-login firebase firebase-authentication
我有一个当前数据库,其中包含Firebase中的活跃用户,可以使用user/pwd登录,但现在我正在实现facebook登录,我意识到将Facebook帐户与现有用户链接的唯一方法是仅在用户已登录时user/pwd但不是在登录之前.
我的应用程序中有两个按钮(使用fb和电子邮件登录)但如果我尝试使用现有用户的同一电子邮件使用fb登录,我将收到以下错误:auth/account-exists-with-different-credential and文档说,为了解决这个问题,用户需要先登录然后链接.
你知道是否有办法链接这两个帐户但是没有先登录,我的意思是,从登录视图?
您需要在链接之前先登录用户.如果您想确保它是同一个用户,这一点很重要.否则,您可以在Firebase控制台中切换到每封电子邮件的多个帐户.解决这个问题的方法是,当您收到错误时auth/account-exists-with-different-credential,错误将包含,error.email并且error.credential在您使用Facebook登录后该帐户已作为密码帐户存在.然后firebase.auth().fetchProvidersForEmail(error.email),您可以使用该电子邮件的提供者ID列表调用哪个解析.在这种情况下,它将包含['password'].然后,您要求用户提供密码.您呼叫signInWithEmailAndPassword(error.email, password)登录原始用户.然后firebase.auth().currentUser.linkWithCredential(error.credential),您可以将Facebook凭据链接到密码帐户.现在两个帐户都已合并,用户可以使用其中一个帐户登录.
| 归档时间: |
|
| 查看次数: |
1781 次 |
| 最近记录: |