node-schedule 不适用于 express 应用程序
node-schedule not working with express app
我正在尝试向我的 express typescript 应用程序添加一个调度程序,我的代码如下:
app.ts(定义了端口和主机)
import express from "express";
import { createServer } from "http";
import { testTask } from "./task/updatePairsTask";
import router from "./api/router";
const app = express();
app.use(express.json());
app.use("/", router);
const httpServer = createServer(app).listen(PORT, HOST, () => {
console.log(`Started server at ${HOST}:${PORT}`);
});
我在这里定义了我的工作:updatePairsTask.ts
import schedule from "node-schedule";
export const testTask = schedule.scheduleJob("/1 * * * * *", () => {
console.log("Words");
});
我假设这应该让调度程序每隔一秒向控制台打印一次,但是一旦应用程序启动,除了“已启动服务器”消息之外似乎什么也没有打印。
你能帮忙吗?
谢谢。
您可以使用 this 包以非常简单的方式操作 Cron 任务。
您可以使用 this 网站获取 cron 计划表达式。
import express from "express";
import { createServer } from "http";
import { testTask } from "./task/updatePairsTask";
// import CronJob from "cron"; // npm i cron
const CronJob = require("cron").CronJob
import router from "./api/router";
const app = express();
app.use(express.json());
app.use("/", router);
const job = new CronJob({
cronTime: '* * * * * *',
onTick: function () {
testTask()
},
start: false,
timeZone: 'Asia/Kolkata'
})
job.start()
const httpServer = createServer(app).listen(PORT, HOST, () => {
console.log(`Started server at ${HOST}:${PORT}`);
// you can also put job.start() here.
});
我正在尝试向我的 express typescript 应用程序添加一个调度程序,我的代码如下:
app.ts(定义了端口和主机)
import express from "express";
import { createServer } from "http";
import { testTask } from "./task/updatePairsTask";
import router from "./api/router";
const app = express();
app.use(express.json());
app.use("/", router);
const httpServer = createServer(app).listen(PORT, HOST, () => {
console.log(`Started server at ${HOST}:${PORT}`);
});
我在这里定义了我的工作:updatePairsTask.ts
import schedule from "node-schedule";
export const testTask = schedule.scheduleJob("/1 * * * * *", () => {
console.log("Words");
});
我假设这应该让调度程序每隔一秒向控制台打印一次,但是一旦应用程序启动,除了“已启动服务器”消息之外似乎什么也没有打印。
你能帮忙吗?
谢谢。
您可以使用 this 包以非常简单的方式操作 Cron 任务。
您可以使用 this 网站获取 cron 计划表达式。
import express from "express";
import { createServer } from "http";
import { testTask } from "./task/updatePairsTask";
// import CronJob from "cron"; // npm i cron
const CronJob = require("cron").CronJob
import router from "./api/router";
const app = express();
app.use(express.json());
app.use("/", router);
const job = new CronJob({
cronTime: '* * * * * *',
onTick: function () {
testTask()
},
start: false,
timeZone: 'Asia/Kolkata'
})
job.start()
const httpServer = createServer(app).listen(PORT, HOST, () => {
console.log(`Started server at ${HOST}:${PORT}`);
// you can also put job.start() here.
});