您是否厌倦了手动更新壁炉系列?您是否想要一种自动化过程并节省时间的方法?然后,您需要的解决方案是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进行设置。