javascript - 如何在 Firebase Auth 中添加或更新 phone_number

标签 javascript firebase firebase-authentication

我正在尝试在用户使用 Firebase Auth 注册时添加电话号码。我正在使用这种方法:

user = firebase.auth().createUserWithEmailAndPassword('myemail@email.com', 'password').catch(function(error) {
  // Handle Errors here.
  var errorCode = error.code;
  var errorMessage = error.message;
  // ...
});

我正在尝试在注册过程中使用以下方式更新手机号码:

if(user){
  user.updatePhoneNumber("+91999999999")
}

我遇到错误:

updatePhoneNumber failed: First argument "phoneCredential" must be a valid phone credential.

我知道它需要是一个有效的电话号码,根据这个 Answer 我们需要验证电话号码才能更新。

所以我的问题是我需要创建一个注册表单,我可以在其中接收电话电子邮件和 PWD。

我想保存电话号码并稍后验证号码。我们可以在注册期间更新电话号码吗?

使用此代码,我可以在 firebase 管理员中更新 phone_number:

user = auth.create_user(
    email='user@example.com',
    email_verified=False,
    phone_number='+15555550100',
    password='secretPassword',
    display_name='John Doe',
    photo_url='http://www.example.com/12345678/photo.png',
    disabled=False)

为什么web注册没有这个功能

最佳答案

如果用户不使用该号码登录/验证该号码,则无法为他们设置电话号码。你必须 sign in the user with phone authentication也是,然后 link the two providers together .

如果您不想让用户使用他们的电话号码登录,而只想存储该号码,则必须在 Firebase 身份验证的内置电话号码提供程序之外执行此操作。

关于javascript - 如何在 Firebase Auth 中添加或更新 phone_number,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59625492/

相关文章:

javascript - fullcalendar-仅获取用户选择的事件

javascript - jquery .each 函数和传递变量

javascript - 如何正确从 firebase 检索数据?

Firebase 和 Google OAuth 同意屏幕

unit-testing - 使用 Jasmine 进行 Angular2 AngularFire Auth 测试

javascript - 将 svg 缩放到父容器

javascript - 我如何调整此代码,使其仅返回 null、未定义或空值

ios - Firebase 身份验证和 Swift : Check if email already in database

android - 如何让 Firebase 在数据库的三个不同区域显示相同的 id?

firebase - 为什么 firebase 电子邮件链接在 URL 中包含 apiKey?