【发布时间】:2019-04-05 14:18:03
【问题描述】:
我有如下路线,
router.get('/startjob', function(req, res) {
var = "one";
start();
res.redirect('/');
}
我的启动函数会循环,需要重定向到主页,
start(){
check = setInterval(function(){
if(//condition){
var = "two";
clearInterval(check);
// redirect to '/'
}
},5000);
}
我为什么要进行两次重定向是因为,我想在路由之后立即刷新主页上呈现的变量,并在 start() 函数结束时刷新
router.get('/', function(req, res) {
res.render('index', {
title: 'Home',
value: var
});
}
由于我在函数结束之前已经在路由中进行了重定向,所以我无法在函数内重定向到主页。
我能找到的唯一解决方案是不在函数内部进行重定向,而是让页面每 5 秒左右刷新一次,我觉得这不太合适。
函数内部也有重定向的解决方法吗?
谢谢。
【问题讨论】:
-
您可以使用
node-schedule或node-cron每5秒运行一次start()函数,您可以相应地重定向它...
标签: node.js express redirect routing