首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FIREBASE phoneAuth ( LinkWithPhoneNumber )。如何稍后在Firebase Web中更改用户的链接电话号码。( nodejs,创建-反应-应用程序)?

FIREBASE phoneAuth ( LinkWithPhoneNumber )。如何稍后在Firebase Web中更改用户的链接电话号码。( nodejs,创建-反应-应用程序)?
EN

Stack Overflow用户
提问于 2018-10-04 12:46:08
回答 2查看 2.1K关注 0票数 1

在我的创建-反应-应用程序项目中,我使用了firebase。为了SignUp的目的,我使用firebaseAuth().createUserWithEmailAndPassword(email, password)

然后,在SignUp之后,我将它们的phoneNumber保存在localStorage中,并使用localStorage将它们重定向到PhoneAuth页面,然后使用此函数

代码语言:javascript
复制
export function PhnAuth(phone) {
    window.recaptchaVerifier = new firebaseAuth.RecaptchaVerifier('recaptcha-container',{'size': 'small'});
    return firebaseAuth().currentUser.linkWithPhoneNumber(phone, window.recaptchaVerifier)
    .then(function (confirmationResult) {
        window.confirmationResult = confirmationResult;
      }).catch(function (error) {
    })
}

在完成了recaptcha之后,我成功地将用户的电子邮件与他们的phoneNumber链接起来。但是以后如何更新phoneNumber呢?我找不到任何关于更新文档中的链接phoneNumber的内容。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-10-04 14:37:55

为此,在updatePhoneNumber对象上有一个User方法。

请参阅参考文档关于更新用户配置文件的文档

请注意,为此您需要一个phoneCredential,这意味着这必须是一个经过验证的电话号码。见如何在firebase.auth (js,ts)中更新用户电话号码

如果您想要更新用户的电话号码而不进行验证,可以通过Admin完成。有关此问题的示例,请参见如何在NodeJS的Firebase身份验证中更新电话号码?

票数 1
EN

Stack Overflow用户

发布于 2020-03-10 09:22:40

您需要解除当前手机(provider.providerId === 'phone')的链接,然后您可以链接一个新的

代码语言:javascript
复制
    const currentUser = firebaseAuth().currentUser;

    currentUser.unlink('phone').then(successCallback).catch(errorCallback)

若要检查电话是否链接到当前用户,需要检查提供商列表。

代码语言:javascript
复制
    const phoneProviders = currentUser.providerData.filter(
      provider => provider.providerId === 'phone'
    );
    if (phoneProviders.length > 0) {
      currentUser.unlink('phone').then(successCallback).catch(errorCallback);
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52647092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档