You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Firebase Auth onDelete触发器在用户创建时误触发问题排查

更新于2023年10月4日:

我更新了系统上的firebase-tools,现在触发器可以正常工作了。如果未来有人遇到相同问题,可以尝试同样的方法。更新命令为npm install -g firebase-tools

我正为这个问题困惑不已:

我创建了一个简单的Auth触发器函数,每当新用户账户创建时,会在Cloud Firestore中生成一个文档。该功能此前一直运行正常。

现在我想添加一个新函数,在用户账户删除时删除对应的文档。

然而令我惊讶的是,.onDelete()触发器在创建新用户时也会触发,导致用户文档刚创建就被立即删除……

我在Firebase模拟器中调试该问题,因为我有一个生产环境应用,不想影响活跃用户群。

以下是我的代码,已经尽可能简洁。我哪里出错了?这是Firebase的严重Bug,还是我遗漏了什么?

exports.initializeUserDocUponRegistration = functions.region("europe-west1").auth.user().onCreate(
  async (user) => {
    await db
      .doc(`users/${user.uid}`)
      .set(
        {
          uid: user.uid,
        },
      );
  });

exports.deleteUserDocsUponAccountDeletion = functions.region("europe-west1").auth.user().onDelete(
  async (user) => {
    const userDocRef = db.collection("users").doc(user.uid);
    await db.recursiveDelete(userDocRef);
  }); 

以下是创建新用户时的函数日志。
创建新用户时的函数日志

内容的提问来源于stack exchange,提问作者Flying Wizzy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 07:46:05