Firebase的功能是在一段时间后更新/删除文档



我想创建一个firebase函数,像Instagram故事一样,在24小时后删除或更新文档。这种实施会奏效吗?

// 24 hours in miliseconds
const time = 24 * 60 * 60 * 1000;
exports.updateUser = functions.firestore
.document('users/{id}')
.onUpdate((change, context) => {
setTimeout(() => {
// Delete or update doc
}, time);
});

如果您询问是否可以使用setTimeout在Cloud Functions中实现一小时的延迟,答案是否定的,它不会起作用。云功能最多可以运行9分钟(默认60秒(。之后,函数将关闭,并且您的超时回调将被取消。

如果你想在未来某个特定的时间安排一些工作,你应该使用云任务。或者使用预定功能定期扫描要删除的文档。

另请参阅:

  • 如何安排云函数在未来与云任务一起运行(构建Firestore文档TTL(
  • Firebase的云函数是否按时触发

最新更新