【问题标题】:passing state in email actions - continueUrl在电子邮件操作中传递状态 - continueUrl
【发布时间】:2017-09-14 10:33:45
【问题描述】:

在接受的答案的 cmets 中指出,我应该将我的 firebase 版本设置为 4.3.1,而不是我的上一个版本 4.2.0

您好,这应该很简单,我正在关注以下文档:firebase passing state in email actionschanging the default email-handler

我希望在用户验证他的电子邮件后将其重定向到新网址。该 url 已经在 firebase 的 Authenticated 域中。

我也已经有了 actionCodeSettings:

var actionCodeSettings = {
    url: 'http://myurl.io/join',
    iOS: {
      bundleId: 'com.myurl.ios'
    },
    android: {
      packageName: 'com.myurl.android',
      installApp: false,
      minimumVersion: '12'
    },
    handleCodeInApp: false
  };

  function sendEmailVerification() {
    console.log('sendEmail Verification');
    firebase.auth().currentUser.sendEmailVerification(actionCodeSettings).then(function() {
    });
  }

如果我理解正确,我现在需要实现我从另一个答案中找到的 getParameterByName。我的两个问题是:

1) 默认操作 URL 是 https://faros-fe2f5.firebaseapp.com/__/auth/action 。我应该改变这个吗?我猜它会根据我的 actionCodeSettings 自动更改

2) 在113 行,我们有一个感兴趣的函数,它接受通过getParameterByName 检索的参数。此时如何调用 continueUrl?

我发现有关此主题的文档有点含糊。在这个阶段,我想在电子邮件验证完成后重定向用户

【问题讨论】:

    标签: firebase firebase-authentication


    【解决方案1】:

    1) 默认操作 URL 是 https://faros-fe2f5.firebaseapp.com/__/auth/action 。我应该改变这个吗?我猜它会根据我的 actionCodeSettings 自动更改

    如果您想在自己的页面中处理验证链接,可以将其更改为您自己的链接,但这只能在 Firebase 控制台 -> 身份验证 -> 电子邮件模板部分中完成

    继续 URL ('http://myurl.io/join') 是最终的重定向链接,将嵌入链接的 continueUrl 查询参数中。您通常会在电子邮件验证完成后,显示一个继续按钮以转到该链接。这可以从客户端传递,并且必须是列入白名单的域。

    2) 在第 113 行,我们有一个感兴趣的函数,它接受通过 getParameterByName 检索到的参数。此时 continueUrl 是如何调用的?

    仅当您使用自己的电子邮件操作 URL 而不是上面的 .../__/auth/action 链接时,您才需要编写此内容。 您将在应用电子邮件验证后,显示一个继续按钮以返回该链接。

    我建议您尝试使用默认小部件的流程,单击链接,验证电子邮件,然后单击继续按钮。您可以模仿它并在此基础上构建您自己的自定义登录页面。

    【讨论】:

    • 您好,感谢您的回复 - 目前我有一个带有 url 的 actionCodeSettings:myurl,我将 actionCodeSettings 作为参数传递:sendEmailVerification(actionCodeSettings)。但是,当我注册时,我收到一封电子邮件,其中重定向链接指向一个没有按钮的页面,但是标准的“您现在可以使用您的帐户对其进行签名”。这是一个截图。 evernote.com/l/AVEfdIKh16hA7YvVNthOZOURI3cjX3V1AfA
    • 链接是否包含 continueUrl 查询参数?
    • 还要确保您使用的是最新的 firebase JS 版本。
    • 链接不包含 continueUrl 参数! actionCodeSettings 确实如此。我的 Firebase 版本是 4.2.0
    • 请升级到最新版本4.3.1。从 4.3.0 开始对此的支持:firebase.google.com/support/release-notes/js#4.3.0
    猜你喜欢
    • 2019-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-04
    • 1970-01-01
    • 2018-02-23
    • 2019-12-08
    • 1970-01-01
    相关资源
    最近更新 更多