我正在使用sailsJS和sails-hook-cron。
我想设置"时间表" config / cron.js文件的var,其中包含一个MySQL查询到DB的变量。
可能吗?
感谢。
答案 0 :(得分:0)
不是真的,好吧,如果你想要动态启动Cron作业,这可能是你想要从数据库中获取信息的唯一原因。
相反,您可以使用服务。一个非常基本的例子是在api / services文件夹中创建一个名为CronService.js的文件。
// CronService.js
var CronJob = require('cron').CronJob;
module.exports = {
startJob : function(time) {
new CronJob(time, function() {
// does whatever you need to do.
}, null, true);
}
}
然后可以在控制器中调用此服务。例如
startCronService : function(req, res, next) {
// Call mysql db and get the schedule data.
// Set the time variable with the schedule data and start the job
var time = '10 * * * * *';
CronService.startJob(time);
res.ok();
},
有关使用cron包的完整详细信息,请参阅https://www.npmjs.com/package/cron