使用Express'rouner.get和cronjob

时间:2017-11-03 13:15:09

标签: node.js cron

我正在使用node-cron和Express.js

我希望我的cronjob每5秒运行一次,但我也必须返回响应,所以我使用的是router.get。但是,它没有运行。是否使用cron,如何每5秒触发一次/getThings

new cron('*/5 * * * * *', function () {
  router.get('/getThings', function (req, res, next) {
    res.sendStatus(200);
  });

}, null, true, 'America/Los_Angeles');

2 个答案:

答案 0 :(得分:1)

你需要在你的前端处理它。使用Express,您只能在每次请求时发送一​​次响应。因此,如果您想在4秒后进行状态更新,请每4秒从您的前端发送一个新请求(循环播放)。

答案 1 :(得分:0)

嗯,您需要正常定义快速路线。然后在您的cron函数内部,您将向已定义的快速路线发出请求。

要在您的cron函数中发出请求,您可以使用节点默认的http模块,或者为了更简单,更清洁,您可以使用请求或axios等模块。你可以在npm找到它们。