事件发生一分钟后如何执行firebase云功能?
Posted
技术标签:
【中文标题】事件发生一分钟后如何执行firebase云功能?【英文标题】:How to execute firebase cloud function one minute after an event occurred? 【发布时间】:2020-02-29 09:50:32 【问题描述】:我正在为我的 android 应用程序使用 Firebase 实时数据库。我想在数据库写入发生后一分钟执行一个 firebase 函数(而不是像 Cron 作业那样每隔 1 分钟执行一次)。可能吗?如果可能,我该怎么做?
【问题讨论】:
Firebase 不支持此功能,但您可以解决此问题。 该函数在触发时被调用,但您可以设置 setTimeout() 函数来延迟代码的执行。 【参考方案1】:Cloud Functions 不提供延迟调用,但您可以与 Cloud Tasks 集成,以便在延迟后安排对另一个函数的回调。
【讨论】:
medium.com/firebase-developers/…【参考方案2】:这是一种解决方法,如果您想延迟相当长的时间,请考虑注意云函数超时选项,如果需要,增加它默认超时是在函数第一次开始执行的 60 秒之后
export const Your function Name = functions
.runWith( timeoutSeconds: 120 ) // set the timeout in second, (the type is number)
.https.onRequest(async (req, res) =>
你可以把你想要延迟的所有东西都包装在一个函数中
setTimeout(() => // your code inside the functions you want it to be delayed , delay time in seconds)
函数
【讨论】:
以上是关于事件发生一分钟后如何执行firebase云功能?的主要内容,如果未能解决你的问题,请参考以下文章
如何修复应用休眠 1 分钟后未收到 Firebase FCM 的通知
使用 Firebase 云消息传递,还是让应用通过 API 请求事件和触发通知?