首页 > 解决方案 > 在 Flutter 中使用 Firebase 进行电子邮件验证

问题描述

当用户单击从 Firebase 发送的 emailverificationURL 时,我目前正在浏览我的颤振网页。我设置了模板 URL,因此如果用户单击该 URL,它将导航到我使用此代码创建的特定页面。

void initState() {
super.initState();
WidgetsBinding.instance!.addPostFrameCallback((timeStamp) {
  Uri uri = Uri.dataFromString(window.location.href);
  Map<String, String> params = uri.queryParameters;
  String? oobCode = params['oobCode'];
  validateEmail(oobCode!);
});

}

Future<void> validateEmail(String oobCode) async {
    try {
      await FirebaseAuth.instance.applyActionCode(oobCode);
      await FirebaseAuth.instance.currentUser!.reload();
      Get.toNamed('/');
      Get.dialog(AfterVerificationPopUp());
    } catch (e) {
      print('Error Occured!!! Email not verified!!');
      Get.toNamed('/');
      Get.dialog(VerificationFailedDialog(me: me!));
    }
  }

问题是它不适用于新标签。如果我复制 URL 并将其粘贴到用于发送电子邮件验证 URL 的选项卡上,它就可以工作。

有没有办法让它在其他标签上也能工作?

标签: flutter

解决方案


推荐阅读