电子邮件链接身份验证。如何使用动态链接注册?

Posted

技术标签:

【中文标题】电子邮件链接身份验证。如何使用动态链接注册?【英文标题】:Email Link authentication. How to signUp with a Dynamic Link? 【发布时间】:2019-12-03 20:54:25 【问题描述】:

使用 DeepLink 进行 Flutter Firebase 电子邮件链接注册

我的想法: 我想向用户发送一封带有 DeepLink/Dynamic Link 的电子邮件,这会将他们带回我的 Flutter 应用程序,在那里我可以 SignUp with Email and Link 并注册 Firebase 用户。

但是:我不知道该怎么做。找不到任何文档、教程或示例。

这是我现在的代码:


    var link = ''; //need to receive a link somewhere?

    try 
      final FirebaseUser user =
          await _auth.signInWithEmailAndLink(email: email, link: link);

      try 
        await _auth.sendSignInWithEmailLink(
          email: email,
          url: 'https://classmateapp-72ce9.firebaseapp.com',
          handleCodeInApp: true,
          iosBundleID: 'ch.classmate.app',
          androidPackageName: 'ch.classmate.app',
          androidInstallIfNotAvailable: false,
          androidMinimumVersion: '12',
        );
        print('gesendet!');
       catch (error) 
        print(error);

        await _auth.isSignInWithEmailLink(link);
      

      updateUserData(user);
      return user;
     catch (error) 
      print(error);
      return null;
    
  

谁能给我一个指导来解决我的问题? 非常感谢!

【问题讨论】:

【参考方案1】:

我猜您已经设置了 Firebase 控制台,是吗? 如果是这种情况,您必须按照page 上的步骤操作。它基本上是这样说的:

在您的应用中包含Dynamic Links SDK 以编程方式或通过Firebase Console 创建链接 最终处理请求

我建议通过 Firebase 控制台创建链接。第 2 步和第 3 步的示例显示在 Dynamic Links SDK pub 页面上。

希望这会有所帮助!

【讨论】:

是的,我已经设置了 Firebase 控制台。我从通过电子邮件发送的动态链接中获得了一个深层链接,对吗?然后我必须检查,如果 Deep Link 是 SignInWithEmailLink,如果为真,我可以使用电子邮件和 Deep Link 注册用户吗?这是正确的吗?

以上是关于电子邮件链接身份验证。如何使用动态链接注册?的主要内容,如果未能解决你的问题,请参考以下文章

注册新帐户时如何要求 asp.net forms 身份验证发送验证电子邮件?

如何禁用 aws amplify vue 身份验证器的注册链接?

如何将 ASP.NET Core 身份链接到另一个实体?

如何使用 Laravel 5.5 身份验证使电子邮件登录不区分大小写

如何合并 2 个不同的身份验证信息?

如何将多个身份验证提供程序链接到 Firebase 帐户?