Firebase 电话身份验证和链接

2023-12-09

我正在尝试将我的电话号码与我的电子邮件密码身份验证链接起来。所以我使用以下步骤构建我的注册:

  1. 用户输入电子邮件地址和密码。
  2. 然后我打电话firebase.auth().createUserWithEmailAndPassword(values.email, values.password)
  3. 然后我需要将当前帐户与电话号码关联起来,以便我使用firebase.auth().currentUser.linkWithPhoneNumber("+xxxxxxxxxx", xxx)

但是,我没有看到任何链接。在我的 Firebase 控制台中创建的 2 个帐户和当前用户的详细信息中仅包含电话号码。当我再次使用电子邮件和密码登录并检查用户详细信息时,电话号码不存在!

请在下面找到我的代码:

onSubmit(values) {
    this.props.firebase.auth().createUserWithEmailAndPassword(values.email, values.password).then((user) => {
        //send recaptchaverifier
        window.recaptchaVerifier.verify();

    }).catch((error) => {
        console.log(error);
    });
}


window.recaptchaVerifier = new firebase.auth.RecaptchaVerifier('submit-button', {
        'size': 'invisible',
        'callback': function(response){
         //called when we call "window.recaptchaverifier.verify() in 
         //onSubmit function
            var xxx = window.recaptchaVerifier;

            this.props.firebase.auth().currentUser.linkWithPhoneNumber("+xxxxxxxx", xxx)
                .then((verificationId) => {
                    console.log('inside');
                    console.log(resp);
                    var verificationCode = window.prompt('Please enter the verification ' +
                        'code that was sent to your mobile device.');
                    return firebase.auth.PhoneAuthProvider.credential(resp.verificationId,
                        verificationCode);
                }).then((phoneCredential) => {
                console.log("RESULT OF AUTH", phoneCredential);
                console.log("USER INFO: ", this.props.firebase.auth().currentUser);
                return this.props.firebase.auth().signInWithCredential(phoneCredential)
            }).catch((error) => {
                console.log("ERRORS: ", error);
            }).catch((error) => {
                console.log("ERROR", error)
            });
        }.bind(this)
    });

你正在呼唤signInWithCredential使用创建新用户的电话凭据。您需要执行以下操作:

firebase.auth().currentUser.linkWithPhoneNumber("+xxxxxxxx", xxx)
  .then((confirmationResult) => {
    // At this point SMS is sent. Ask user for code.
    let code = window.prompt('Please enter the 6 digit code');
    return confirmationResult.confirm(code);
  })
  .then((result) {
    // Phone credential now linked to current user.
    // User now can sign in with email/pass or phone.
  });
  .catch((error) => {
    // Error occurred.
  });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Firebase 电话身份验证和链接 的相关文章

  • .push() 将多个对象放入 JavaScript 数组中返回“未定义”

    当我将项目添加到beats数组然后console log用户时 我得到了数组中正确的项目数 但是当我检查 length 时 我总是得到 1 尝试调用索引总是会给我 未定义 如下所示 Tom beats 1 我想我错过了一些明显的东西 但这让
  • 使用 Node.js 构建网站的最佳实践

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 我想知道如何使用 Node js 从头开始 开发一个网站 我明白我怎么能possibly
  • 为什么 window 与 Internet Explorer 中的 window.self 不同?

    关于我如何遇到这个问题有一个复杂的背景故事 但为什么self属性不完全等于窗口本身 在 Safari 和 Firefox 及其朋友中 结果如我所料 gt window window self true gt window window se
  • 如何使用 Playwright 使用选择器查找框架 (iframe)

    我有一个小问题 无法找到使用 Microsoft Playwright 框架的答案 根据您可以使用以下代码获取 iframe const frame page frame frame login 但是如何使用选择器来查找 iframe 并与
  • 从回调中访问状态

    我在从回调访问组件状态时遇到问题 国家的价值num更改正确 但此类更改对于加载时定义的回调函数不可见 import React useState from react class MyObject callback gt void cons
  • 本地推送通知到在应用程序内运行 JS 代码的 Win8 Live Tile

    我正在尝试将更新发送到我的应用程序的磁贴 当应用程序运行时 这可以正常工作 例如 当用户单击按钮时 我可以轻松地将磁贴更新通知发送到磁贴 我无法解决的是当应用程序无法运行时如何更新磁贴 我找到的唯一选择是使用以下命令从远程 Web 服务器拉
  • 导航栏下拉菜单(折叠)在 Bootstrap 5 中不起作用

    我在尝试使用以下命令创建响应式菜单或下拉按钮时遇到问题Bootstrap 5一切似乎都正常 导航图标和下拉图标出现 但它不起作用 当我单击nav图标或dropdown按钮 无dropdown menu apears 我想特别提到的是 我还包
  • 如何在 Android 模块中使用 FirebaseAuth

    我正在开发一个聊天库 我想在其中显示登录用户的对话 制作该库的原因是我想将其集成到多个项目中 我现在面临的问题是FirebaseAuth表示用户尚未登录 FirebaseAuth getInstance mFirebaseApp getCu
  • 如何使用角度材料在具有可扩展行的表格中创建嵌套垫表

    我有以下数据 id c9d5ab1a subdomain wing domain aircraft part id c9d5ab1a info mimetype application json info dependent parent
  • 如何使用 Javascript 设置查询字符串

    有没有办法使用 javascript 设置查询字符串的值 我的页面有一个过滤器列表 单击该列表时 它将更改右侧的页内结果窗格 我正在尝试更新 url 的查询字符串值 因此如果用户离开页面 然后单击 后退 按钮 他们将返回到最后一个过滤器选择
  • 如何在另一个自定义 Hook 中使用返回值的自定义 Hook?

    我正在使用 React native 其中有一个名为的自定义 HookuseUser使用以下方法从 AWS Amplify 获取用户信息Auth getUserInfro方法 然后获取返回对象的一部分并用它设置一个状态变量 我还有另一个名为
  • mongodb 聚合 - 累积字段的不同组值

    如果我有Player表格文件 name String score Int 我有Group文档 其中组代表玩家列表 groupName String players ObjectID 玩家可以属于多个组 我想做一个聚合Player文档 按以下
  • 创建反应应用程序:npm 错误!解析“...”附近时 JSON 输入意外结束

    描述错误 npx create react app my app不适合我 我试过npm cache clean force但我一次又一次地遇到同样的错误 重现步骤 npm cache clean force npm npx create r
  • JavaScript eval("{}") 返回行为?

    根据ECMA 262 规范 http www ecma international org publications files ECMA ST Ecma 262 pdf 以下语句返回1 eval 1 eval 1 eval 1 var a
  • 聆听 Angular 2 中的元素可见性

    我正在为我的网络应用程序使用 Bootstrap 和 Angular 2 v4 我想监听指令中的元素以了解可见性变化 我的元素有一个可以隐藏其子元素的父元素hidden sm up我需要在每次隐藏或显示时触发一个函数 div hidden
  • 使用javascript动态更新css内容

    需要将 css 更新为动态值 我不确定最好的方法是什么 div style zoom 1 div 缩放级别将根据窗口大小调整触发 应用程序将相应缩放 我将此应用程序加载到 cordova 中并让它在 iPAD 中运行 然后我意识到需要使用
  • Rails 3.1+ 的 Jasmine 与 Mocha JavaScript 测试 [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我对茉莉花有经验并且非常喜欢它 有谁有 Jasmine 和 Mocha 的经验 特别是 Rails 的经验吗 我想知道是否值得转用 我已经在 J
  • 模块中的类无法加载

    我正在开发一个 2D Unity android 游戏 其中我最近添加了 Firebase Beta SDK 但添加后FirebaseAnalytics unitypackage我面临的错误是 无法加载模块中的类 当我删除文件夹时Fireb
  • Highcharts jQuery 渲染问题 - 所有浏览器

    我在尝试使用构建堆积柱形图时遇到了一个奇怪的问题高图表 http www highcharts com 当图表呈现时 在您调整浏览器大小之前 不会显示列无论如何 导致图表重绘 我认为 图表的其余部分显示 轴 标题等 但不显示列本身 我在 I
  • 有没有办法使用 ko.observableArray 作为地图?

    有没有办法使用ko observableArray http knockoutjs com documentation observableArrays html像地图 字典一样 例如 var arr ko observableArray

随机推荐

  • PHP 刷新所有级别的输出缓冲

    我正在尝试实现一个简单的 Http Response 类 该类实现 Http Streaming 或 Chunked Encoding 为了做到这一点 我需要设置output buffering Off在 php ini 中 并以一定的时间
  • 即使以管理员身份运行,在 Windows 上运行 Spark 也会出现错误 5(访问被拒绝)

    我从 Spark 开始 所以不太确定我的问题出在哪里 并在这里寻找有用的提示 我正在尝试以管理员身份在 Windows 7 计算机上运行 Spark pyspark 但它似乎不起作用 我仍然收到 WindowsError 5 见下图 我已经
  • 在语义 URL 中使用“/”作为分隔符是否始终需要绝对路径

    我们对 mod rewrite 和语义 URL 很陌生 尽管研究了 Google 和 SO 但我们仍无法找到这个问题的明确答案 当我们在 htaccess 中使用正斜杠作为分隔符时 html 中所有的图像 css 和 js 引用都必须从相对
  • 如何获取数组中VB.net(VS08)项目中的所有表单?

    好吧 所以我需要一个方法来遍历 Visual Studio 2008 下的 VB net 项目内的所有表单 并创建一个表单类型的数组 并引用其中的所有表单 以便该数组看起来像这样 伪代码 FormsArray Form1 Form2 For
  • 类外的成员函数定义

    是否可以在类声明之外定义函数或方法 例如 class A int foo A foo 10 int A bar return foo 可以在类外部定义但不声明方法 类似于在 C 中创建函数原型然后稍后定义它们的方式 即 class A in
  • 如何解决 org.xmlpull.v1.XmlPullParserException: 意外类型 (position:END_DOCUMENT null@1:1 in java.io.InputStreamReader@40d310f0)

    我使用 jax ws 创建了简单的 Web 服务 我需要在android中使用该网络服务 当我使用该网络服务时 我收到此错误org xmlpull v1 XmlPullParserException unexpected type posi
  • 从C程序执行php脚本并将结果存储到变量中

    我想从 C 程序执行 PHP 脚本并将返回内容存储到 C 变量中 我尝试了以下操作 但它不起作用 C printf calling php function n execl usr bin php q var www html phpinf
  • 为什么使用正则表达式解析 XML 是一个坏主意? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我刚刚回顾了我之前发表的一
  • QML:如何拒绝放置操作

    我有一个DropArea和两个元素 我想DropArea拒绝丢弃事件 如果DropArea已经有一个元素被删除 另一个元素不允许删除 除非第一个元素移出 DropArea property bool dropped false onDrop
  • C++ Qt:从线程重定向 cout 以发出信号

    在单个线程中 我有这个漂亮的类 它将所有 cout 输出重定向到 QTextEdit include
  • Cuda 从设备内存创建 3d 纹理和 cudaArray(3d)

    我正在尝试从设备阵列的一部分创建纹理 3D 为此 我的步骤如下 malloc 设备数组 写入设备数组 创建 CudaArray 3D 将纹理绑定到 CudaArray 我这样做的方式不会产生编译器错误 但是当我运行 cuda memchec
  • SQLite 相当于 ISNULL()、NVL()、IFNULL() 或 COALESCE()

    我想避免在我的代码中进行许多如下检查 myObj someStringField rdr IsDBNull someOrdinal string Empty rdr GetString someOrdinal 我想我可以让我的查询通过执行以
  • Javascript的replace()函数[重复]

    这个问题在这里已经有答案了 这是一个简单的 Replace 问题 我无法让它替换下面函数中的子字符串 function linkOnClick var anyNameYouLike some sort of text string righ
  • 验证 Web Api 服务中的 Azure 移动服务令牌

    我正在尝试在使用 Web Api 服务的跨平台移动应用程序上实现身份验证和识别 我的计划是将身份验证导出到联合云服务 例如新的 Azure 移动服务 客户端移动应用程序将使用移动服务身份验证流程 获取令牌 然后将其在请求标头内发送到 Web
  • 从图像中读取透明像素

    有没有办法使用javascript从图片中读取透明像素 我认为 这可能类似于 PNG 修复对 IE 所做的事情 读取透明像素并应用一些东西 哈哈 但是 是的 对于每个浏览器 啊 如果不用 HTML5 也能实现那就太棒了 这个问题实际上是由来
  • 如何在 QGraphicsView 中启用平移和缩放

    我正在使用 python 和 Qt Designer 来实现加载 tiff 图像并在某些鼠标事件上启用平移和缩放 滚轮 缩放 按滚轮 平移 我正在研究一些可以处理图像等的选项和类 到目前为止我发现 QGraphicsScene QImage
  • 我们怎么知道应用程序不能是 Monad?

    从验证的例子 https hackage haskell org package Validation 我试图直观地检测应用程序如何 为什么不能是 Monad 为什么 AccValidation 不能有 Monad 实例 你能挑战我的推理吗
  • 扩展 sys_file_reference (FAL)

    我想用自己的字段扩展 sys file reference 所以我创建了该字段和 TCA 在后端 该字段可用 但我无法引用流体模板中的该字段 ext tables php CREATE TABLE sys file reference no
  • 如何在jsp中迭代多个属性

    我正在尝试迭代属性文件中的一组键 以便仅输出 message pX a property foo message p1 a message p2 b message p3 c some other property bar 我不知道文件中将
  • Firebase 电话身份验证和链接

    我正在尝试将我的电话号码与我的电子邮件密码身份验证链接起来 所以我使用以下步骤构建我的注册 用户输入电子邮件地址和密码 然后我打电话firebase auth createUserWithEmailAndPassword values em