【问题标题】:How to trigger Pub/Sub Topic for Firebase Emulator如何触发 Firebase 模拟器的 Pub/Sub 主题
【发布时间】:2021-07-29 01:01:09
【问题描述】:

使用 Firebase 函数,我的代码通过 Google Cloud Scheduler Job 每小时运行一次。

看起来像这样:

exports.hourly_tick =
  functions.pubsub.topic("hourly-tick").onPublish((message, context) => {
    return getData()
      .then((data) => {
          sendEmail(data["message"]);
      })
      .catch((error) => {
        return console.log("???? Caught error: ", error);
      });
  });

我需要能够在本地进行测试,并且能够从我的终端通过 firebase emulators:start 启动我的 Firebase 模拟器。但是我不知道如何在本地测试环境中触发此功能以查看本地模拟器中的日志。

如何使用本地模拟器测试这个预定的作业/firebase 功能?

【问题讨论】:

    标签: firebase google-cloud-functions google-cloud-scheduler


    【解决方案1】:

    这是 Firebase 工具中的一项持续功能请求(请参阅 GitHub issue)。

    正如帖子中提到的:

    我认为我们可能误导了我们如何代表#2011。它允许将这些功能加载到模拟器中,但实际上并没有按计划触发它们。相反,您必须使用 Pub/Sub 消息手动触发它们。

    您可以检查此 answer 的解决方法,您必须使用 Pub/Sub 消息手动触发计划功能。

    【讨论】:

    • 我也在考虑将逻辑复制到 http 请求导出中。所以为了测试,我可以在运行模拟器时点击那个端点。
    猜你喜欢
    • 2019-04-17
    • 2021-02-21
    • 2022-01-01
    • 1970-01-01
    • 2019-07-26
    • 2019-02-25
    • 2019-12-26
    • 2020-10-11
    • 2016-12-16
    相关资源
    最近更新 更多