首页 > 解决方案 > Firebase user.sendEmailVerification() 到我自己的地址

问题描述

每当 Firebase 用户创建帐户时,我想将验证邮件发送到我自己的邮件,而不是创建的用户的电子邮件。

这是我的代码:

export function onAuthStateChanged(callback) {
  auth.onAuthStateChanged((user) => {
    let userinfo = { uid: "", token: "", name: "", email: "", verified: "" }
    
    if (firebaseUser) {
      userinfo = {
        uid: user.uid,
        token: user.ma,
        name: user.displayName,
        email: user.email,
        verified: user.emailVerified
      }

      if (!user.emailVerified) {
        user.sendEmailVerification();
      }
    }
  })
}

我试图编辑这一行:

user.email = "mymail@gmail.com"
user.sendEmailVerification();

但是“用户”是只读的

谢谢

标签: firebasefirebase-authentication

解决方案


Firebase 身份验证只会向用户配置文件中指定的帐户发送电子邮件。您无法将其配置为将电子邮件发送到其他地方。

我可以快速看到的选项:

  • 当您致电时,请向您自己的地址发送额外user.sendEmailVerification()的电子邮件。
  • 或者完全使用您自己的验证流程,而不依赖于 Firebase 身份验证的user.sendEmailVerification()方法。

Firebase 对这些操作中的任何一个都没有具体的支持,您必须像处理发送电子邮件的任何要求一样自己编写代码。如果您对此不熟悉,您可能希望了解使用 Cloud Functions 发送电子邮件


推荐阅读