在 JavaScript 中使用电子邮件链接向 Firebase 进行身份验证不起作用

Authenticate with Firebase Using Email Link in JavaScript not working

提问人:Frederik Portheine 提问时间:8/25/2023 更新时间:8/25/2023 访问量:19

问:

我的第一个问题是关于堆栈溢出的。

我目前正在开发一个 Web 应用程序,我正在使用 Firebase 进行用户身份验证。我遇到了一个与使用 Firebase 身份验证进行电子邮件验证相关的问题。

我的收件箱中没有收到身份验证电子邮件。

我可以使用电子邮件、谷歌和 facebook 登录用户。我希望能够验证用户电子邮件。我正在使用 firebase serve --only hosting 和 firebase serve --only hosting。

我的目标是允许用户通过 Firebase 身份验证过程验证他们的电子邮件地址。我已经参考了 Firebase 文档,特别是指南 https://firebase.google.com/docs/auth/web/anonymous-auth,并且我正在使用文档中提供的 actionCodeSettings。我在控制台日志中没有收到任何错误消息。

我当前代码:

const actionCodeSettings = {
  url: 'http://localhost:5000/',
  handleCodeInApp: true,
  iOS: {
    bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  dynamicLinkDomain: 'example.page.link'
};

const createAccount = async () => {
  hideRegistrationState(); 

  const emailInputReg = document.getElementById('input-Email').value;
  const passwordInputReg = document.getElementById('input-Password').value;

  try {
    const userCredential = await createUserWithEmailAndPassword(auth, emailInputReg, passwordInputReg);
    const user = userCredential.user;

    await sendSignInLinkToEmail(auth, emailInputReg, actionCodeSettings).then(() => {
      window.localStorage.setItem('emailForSignIn', emailInputReg);
    });
    
    // Clear registration error messages
    hideLoginErrorReg();

    // Show successful registration message
    showRegistrationState(user);
  } catch (error) {
    console.log(`There was an error: ${error}`);
    console.log("Email Verifications Send");
    const errorCode = error.code;
    const errorMessage = error.message;
    showLoginErrorReg(error);
  }
}
JavaScript Firebase 电子邮件 Firebase-Authentication localhost

评论


答: 暂无答案