如何在 Firebase Cloud Function v2 计划函数中的代码中设置时区?

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

在 Firebase Cloud Functions v1 中,可以在函数签名中为计划函数配置时区。

exports.v1ScheduledFunction = functions.pubsub.schedule("every day 00:00")
                                              .timeZone("Etc/GMT+12")
                                              .onRun(async (context) => {
    ...
});

但是,随着 v2 中语法的变化,这种情况发生了变化。

exports.v2ScheduledFunction = onSchedule("every day 00:00", async (event) => {
    ...
});

文档说 v2 可以采用 Unix Crontab 和 App Engine 语法作为字符串计划。但是,我认为您无法在 Unix Crontab 或 App Engine 语法中指定时区。有没有办法在代码中为 v2 中的预定函数指定时区?如果不行的话怎么办?

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

根据 API 参考,第一个参数是时间表或

scheduler.ScheduleOptions
对象。仅供参考:此选项对象还可以包含
GlobalOptions
中的选项(
secrets
region
等)。

要指定时区,您可以使用:

exports.v2ScheduledFunction = onSchedule(
  {
    schedule: "every day 00:00",
    timeZone: "Etc/GMT+12"
  },
  async (event) => {
    // your function code
  }
)
© www.soinside.com 2019 - 2024. All rights reserved.