使用 Firebase 和 Flutter 通过 OTP 验证电话号码

Posted

技术标签:

【中文标题】使用 Firebase 和 Flutter 通过 OTP 验证电话号码【英文标题】:Phone number verification via OTP using firebase and flutter 【发布时间】:2020-01-22 06:20:18 【问题描述】:

我不想通过他们的电话号码对用户进行身份验证,我已经使用他们的电子邮件 ID 和密码进行了验证。我只想通过向他们发送 OTP 并进行验证来确认他们输入了有效的电话号码。我查找的所有解决方案都直接对用户进行身份验证。我使用 firestore 作为我的数据库。

【问题讨论】:

我遇到了同样的问题。最终使用 Facebook 帐户工具包 【参考方案1】:

Firebase 允许您关联多种身份验证方法。您可以在https://firebase.google.com/docs/auth/web/account-linking找到更多详细信息

因此,一旦用户通过电子邮件/密码进行身份验证,请启动电话号码身份验证。当您获得AuthCredential 时,将其链接到上面链接中提到的当前firebase 用户。

其他解决方案是使用外部 SMS 网关(如 twilio)并自行进行电话号码验证。您的用例不需要。如果您仍然想尝试这个,有一个免费的短信网关(使用您自己的手机号码发送短信)https://www.sg.yagnyam.in/。

【讨论】:

其他方式会像答案中提到的那样自行进行验证。 其实我只是想在更新手机号部分的时候验证一下这个号码..所以你看看用户是否不断更新它的号码然后将这么多号码链接到一个不会很混乱单个帐户 如果你不想使用 firebase。使用任何 SMS 网关(如 Twilo)发送 SMS 并进行验证。但如果你想抢先使用sg.yagnyam.in。如果您需要有关使用它的更多详细信息,可以使用该网站上的联系方式与我联系。

以上是关于使用 Firebase 和 Flutter 通过 OTP 验证电话号码的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Flutter 中使用 Firebase Auth 和 Firestore

通过 Flutter for Firebase 重新发送验证

如何使用 Flutter 成功登录和退出 Firebase?

仅在注册时使用 Google Firebase 和 Flutter 公司电子邮件

使用电子邮件和密码创建帐户时 Flutter + Firebase updateDisplayName

如何使用 Flutter 在 Firebase 中正确登录和注册?