如何设置Cron工作以更新您的firebase收藏
#javascript #node #firebase #cronjob

您是否厌倦了手动更新壁炉系列?您是否想要一种自动化过程并节省时间的方法?然后,您需要的解决方案是cron工作!

cron作业是计划在特定时间或间隔运行的任务。在本教程中,我们将向您展示如何使用Nodejs,Express和Typescript设置CRON作业,以每5分钟更新您的Firebase Collection。

先决条件

在开始之前,请确保计算机上安装了以下工具:

  • 节点
  • Express
  • 打字稿

步骤1:安装firebase SDK

要从nodejs代码访问和更新firebase数据库,您需要安装nodejs的firebase SDK。您可以通过运行以下命令来执行此操作:

npm install firebase-admin

步骤2:初始化firebase admin SDK

安装了firebase SDK后,您需要通过提供适当的凭据来初始化Firebase Admin SDK。您可以在“项目设置”部分的Firebase控制台中找到凭据。

要在代码中初始化firebase admin SDK,请使用以下行:

import * as admin from 'firebase-admin';

admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: "https://<DATABASE_NAME>.firebaseio.com"
});

步骤3:更新Firebase Collection

既然您已经初始化了firebase admin SDK,则可以使用它访问和更新Firebase数据库。例如,您可以使用以下代码更新数据库中的特定集合:

const db = admin.firestore();
const collectionRef = db.collection('<COLLECTION_NAME>');

collectionRef.update({
  field1: 'new value1',
  field2: 'new value2'
});

步骤4:设置Cron工作

要设置每5分钟运行一次的CRON作业,您需要使用一个称为“ Node-Cron”的软件包。您可以通过运行以下命令来安装此软件包:

npm install node-cron

安装了节点 - 克朗后,您可以使用它来安排任务以每5分钟运行以下代码:

import * as cron from 'node-cron';

cron.schedule('*/5 * * * *', () => {
  // your code to update the Firebase collection goes here
});

步骤5:设置HTTP服务器

最后,您需要使用Express设置HTTP服务器,以运行您的CRON作业。您可以使用以下代码来执行此操作:

import * as express from 'express';

const app = express();

app.listen(3000, () => {
  console.log('Cron job listening on port 3000');
});

通过这些步骤,您应该拥有每5分钟运行一次的CRON作业,更新Firebase Collection,并使用Nodejs,Express和Typescript进行设置。