Firebase 身份验证 Flutter 中的电话号码

Posted

技术标签:

【中文标题】Firebase 身份验证 Flutter 中的电话号码【英文标题】:Phone Number in Firebase Authentication Flutter 【发布时间】:2021-06-11 21:23:03 【问题描述】:

我创建了一个颤振应用程序,其中电话身份验证用于登录过程。用户输入电话号码,然后在验证用户登录后重定向到otp页面n。

所以我想检查用户是旧用户还是新用户。当用户输入电话号码时,它必须检查用户是否存在于 Firebase 身份验证中,如果是则重定向到 otp 屏幕,如果不存在则必须显示用户不存在并重定向到注册页面。

那么我应该如何在flutter的firebase身份验证页面中搜索电话号码呢?

【问题讨论】:

【参考方案1】:

此类功能仅存在于 Firebase Admin SDK 中,这些 SDK 旨在在受信任的环境(例如您的开发机器、您控制的服务器或 Cloud Functions)中运行。例如,这里是 Node.js 的相关调用:getUserByPhoneNumber

如果您想从客户端使用此类功能,则必须将 Admin SDK 调用封装在您自己构建的自定义 API 中,或者您可以执行 biruk 建议的操作并跟踪已注册电话号码的列表在另一个数据存储中,例如 Firebase 还提供的数据库之一。

【讨论】:

【参考方案2】:

没有办法检查您是否必须在数据库中注册电话号码并检查该电话号码是否存在于该数据库中。

【讨论】:

【参考方案3】:

目前没有功能可以做到这一点。您可以在 Firestore 数据库中跟踪已注册的电话号码列表,并在登录时检查该电话号码是否存在于数据库中。然后您可以使用 this 指南验证该电话号码。

【讨论】:

以上是关于Firebase 身份验证 Flutter 中的电话号码的主要内容,如果未能解决你的问题,请参考以下文章

Flutter Web 中的 Firebase Phone 身份验证

Firebase 身份验证 Flutter 中的电话号码

Flutter Firebase 不保留用户身份验证

Flutter:Firebase 身份验证和 Firestore 快照流

使用 Firebase 身份验证的 Flutter 应用程序中的 Google sign_in_failed 错误

Flutter Firebase 电话身份验证不起作用