当前位置: 首页 > 知识库问答 >
问题:

Flutter Firebase电子邮件无密码登录-链接提供错误

邹山
2023-03-14

我有一个flutter应用程序,我试图使用firebase电子邮件无密码登录。发送部分正在工作,但当我打开链接时,我得到一个错误:

但是,actioncode设置中的handleCodeInApp参数为true。

_firebaseAuth.sendSignInLinkToEmail(
  email: email.value,
  actionCodeSettings: firebase_auth.ActionCodeSettings(
    url: uri.toString(),
    iOSBundleId: "myPackageName",
    androidPackageName: "myPackageName",
    androidMinimumVersion: '0',
    androidInstallApp: false,
    handleCodeInApp: true,
    dynamicLinkDomain: "myPackageName",
  ),
);

Uri在这里创建:

DynamicLinkParameters parameters = DynamicLinkParameters(
  uriPrefix: 'https://myRegisteredDomain',
  link: Uri.parse('https://myRegisteredDomain'),
  androidParameters: AndroidParameters(
    packageName: 'myPackageName',
    minimumVersion: 0,
  ),
  iosParameters: IosParameters(
    bundleId: 'myPackageName',
    minimumVersion: '0',
  ),
);
return await parameters.buildUrl();
<intent-filter>
    <action android:name="android.intent.action.VIEW"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <category android:name="android.intent.category.BROWSABLE"/>
    <data android:host="myRegisteredDomain" android:scheme="https"/>
    <data android:host="myRegisteredDomain" android:scheme="http"/>
</intent-filter>

FirebaseAuth中的isSignInWithEmailLink检查在我使用的^0.20.0+1版本中不能正常工作。有关如何修复此问题,请参考https://github.com/firebaseextended/flutterfire/issues/4711#issuecomment-762323661。在此修复后,我现在可以按预期使用无密码登录

共有1个答案

狄溪叠
2023-03-14

您应该遵循FlutterFire的Firebase电子邮件链接认证示例指南

https://firebase.flutter.dev/docs/auth/usage/#email-link-authentication

它就像一个魅力。

 类似资料:
  • 我正在使用Firebase以及作为Firebase动态链接的一部分生成的url。 > firebase动态url如下所示:例如:https://myapp.page.link/h1c4 用户收到电子邮件并点击验证链接。 在重定向结束时,我可以看到url包含如下所示的oobCode: https://myapp.page.link/h1c4?apikey=&oobcode=yg2n2elu4qgbs

  • 我正试图在我的应用程序上实现无密码电子邮件登录。点击链接后,应用程序从后台返回,但动态链接为空。 这就是我发送邮件的方式(当然是用我的应用程序的正确值): 我还补充了以下意图: 尝试了不同的变体,但没有帮助,包括将firebase项目url作为主机编写,如: 数据仍然是空的。 有什么想法吗?我是不是漏掉了什么?

  • 在您的网页上放置HTML电子邮件链接并不困难,但它可能会导致您的电子邮件帐户出现不必要的垃圾邮件问题。 有些人可以运行程序来收集这些类型的电子邮件,然后以各种方式将它们用于垃圾邮件。 您可以使用其他选项来方便人们向您发送电子邮件。 一种选择可能是使用HTML表单来收集用户数据,然后使用PHP或CGI脚本发送电子邮件。 举个简单的例子,查看我们的联系我们表格。 我们使用此表单获取用户反馈,然后我们使

  • 问题内容: 我希望django通过电子邮件而非用户名对用户进行身份验证。一种方法是提供电子邮件值作为用户名值,但我不希望这样。原因是,我有一个,所以我不能有一个。 另一个原因是所有电子邮件都是唯一的,但有时用户名已被使用。因此,我将自动创建用户名为。 我该如何更改才能让Django通过电子邮件进行身份验证? 这就是我创建用户的方式。 这就是我的登录方式。 除了先获取用户名外,登录还有其他方法吗?

  • 我希望django通过电子邮件而不是用户名来验证用户。一种方法是提供电子邮件值作为用户名值,但我不希望这样。原因是,我有一个url

  • 我有一个关于Strapi电子邮件插件的问题。我想使用Nodemailer。当我用邮递员测试它时,我得到了错误500。我是否用错误的格式编写了PostScript JSON? 提前感谢! 本杰明