首页 > 解决方案 > 我可以使用电话号码而不是电子邮件在 Firebase 中设置无密码身份验证吗?

问题描述

我按照 Firebase 程序进行无密码身份验证:

它工作正常。我能够仅使用电子邮件且无需密码来验证用户。伟大的 !但是有没有办法使用电话号码验证用户并且仍然没有密码?

这就是我处理电子邮件 + 无密码验证的方式:

action_code_settings = auth.ActionCodeSettings(
    url=f'http://localhost:4200/login',
    handle_code_in_app=True,
    ios_bundle_id='com.example.ios',
    android_package_name='com.example.android',
    android_install_app=True,
    android_minimum_version='12',
    dynamic_link_domain='magic42.page.link',
)

link = auth.generate_sign_in_with_email_link('some_email@gmail.com',action_code_settings)

显然,如果我通过电话号码更改电子邮件 ( some_email@gmail.com),则会触发错误,因为此功能仅适用于电子邮件。是否有其他功能可以接受电话号码进行身份验证?如果没有,是否有解决方法?

标签: firebaseauthenticationfirebase-authenticationpassword-less

解决方案


是否有其他功能可以接受电话号码进行身份验证?

是的,使用 Firebase 身份验证,您可以使用带有 JavaScript 的电话号码进行身份验证

文档摘录(与上述相同的链接):

您可以使用 Firebase 身份验证通过向用户手机发送 SMS 消息来登录用户。用户使用 SMS 消息中包含的一次性代码登录。

将电话号码登录添加到您的应用的最简单方法是使用 FirebaseUI,它包括一个插入式登录小部件,用于实现电话号码登录以及基于密码和联合登录的登录流程-在。


推荐阅读