Firebase 功能:onDocumentCreated 重试未触发

问题描述 投票:0回答:1

我已经使用 onDocumentCreated 触发器在 Firebase 中设置了一个触发函数,并注意到有一个选项可以设置用于重试的布尔值。我的假设是,如果函数抛出错误,这将导致重试。因此,我设置了以下测试函数并使用本地模拟器运行它。不幸的是,即使我在日志中看到错误,我也无法多次调用该函数。

还有其他我可能遗漏的设置吗?

export const testRetries = onDocumentCreated(
  {
    document: "/testing/{test}",
    retry: true,
  },
  async (event) => {
    console.log("testRetries");

    throw new Error("test error");
  }
);

我尝试在模拟器中运行上述代码,但只看到它触发一次,然后就再也没有触发过。

firebase google-cloud-firestore google-cloud-functions firebase-tools
1个回答
0
投票

Firebase 模拟器不能完全重现生产行为,并且不支持像它模拟的 Cloud Functions 服务那样的重试。 文档中提到了模拟器不支持重试的事实:

Cloud Functions 模拟器不支持在失败时重试函数。

如果您想观察重试行为,您应该像在类似生产的环境中一样部署该函数并调用它。

© www.soinside.com 2019 - 2024. All rights reserved.