Javascript 如何在Firebase函数中定期以编程方式触发基于计时器的方法?

Javascript 如何在Firebase函数中定期以编程方式触发基于计时器的方法?,javascript,firebase,firebase-realtime-database,google-cloud-functions,Javascript,Firebase,Firebase Realtime Database,Google Cloud Functions,我正在构建一个众筹应用程序,我的应用程序上的每个活动都有一个目标日期。如何编写一个函数,在达到目标日期后自动删除该活动或将其转移到其他位置 更具体地说,我想将活动从ref('/Fund/{campaign\u ID}')移动到ref('/Timed\u out/{campaign\u ID}') PS:请不要建议手动cron作业。如果用户数量和活动量增加,我就不可能跟踪谁发起了活动 我的JSON数据库(最重要的一点): 您可以使用单个cron作业每隔一段时间触发一次,然后扫描过期数据。事实上,这

我正在构建一个众筹应用程序,我的应用程序上的每个活动都有一个目标日期。如何编写一个函数,在达到目标日期后自动删除该活动或将其转移到其他位置

更具体地说,我想将活动从
ref('/Fund/{campaign\u ID}')
移动到
ref('/Timed\u out/{campaign\u ID}')

PS:请不要建议手动cron作业。如果用户数量和活动量增加,我就不可能跟踪谁发起了活动

我的JSON数据库(最重要的一点):


您可以使用单个cron作业每隔一段时间触发一次,然后扫描过期数据。事实上,这是目前在Firebase上实现time to live最常用的方法

既然你已经知道这需要时间,是什么阻止你这么做?什么变得不可能?如果你展示你已经尝试过的东西,也许我们能更好地帮助你。同时,请将数据结构的屏幕截图替换为实际的JSON文本。你可以通过点击你网站中的“导出JSON”链接来实现这一点。cron作业的问题是,每次活动获得批准时,我都必须手动设置cron作业,对吗?随着活动数量的增加,这对我来说将变得不切实际。我想问的是,是否有一种编程方式可以触发和设置cron-jobs。您可以使用单个cron-job每隔一段时间触发一次,然后扫描过期数据。事实上,这是目前在Firebase上实现time to live的最常见的方法。这是一个了不起的解决方案(即使它非常明显,哈哈)。非常感谢你!
{
  "Fund" : {
    "-LEEy7uxXEeI4AJuePoB" : {
      "amount_funded" : 1400000,
      "artist_name" : "Sean Roldan and Friends",
      "genre" : "Indian Blues and Jazz",
      "image_url" : "https://firebasestorage.googleapis.com/v0/b/artcall-f8f1a.appspot.com/o/profile_images%2Fthumbs%2Fseanroldan.jpg?alt=media&token=6414d8d6-e8a8-487e-baf3-0d36d017a205",
      "percent_funded" : 0,
      "perf_location" : "Chennai",
      "reward_amt" : 6000,
      "target_amount" : 1750000,
      "target_date" : 1566568176731,
      "time_left" : 1566568176731,
      "total_backers" : 0
    }
  },
  "Fund_Project_Request" : {
    "-LEEy7uxXEeI4AJuePoB" : {
      "as123132" : 2,
      "asd123132" : 2,
      "asdf123asdf21" : 2
    }
  },
  "Loyalty_Points" : {
    "value" : 3000
  },