自动刷新Node.js中的'app.get()'

时间:2014-10-17 23:42:55

标签: node.js express refresh reload

我试图在任何地方找到这个主题,但没有成功。

我有一个app.get()代码,非常简单,它从一个不断变化的变量中获取一个信息(“equip [id] .status”),我希望它检查变量是否从时间变为时间。

其他选项是跟踪此变量,并在更改时再次运行app.get()。

我的代码:

这是我要刷新的那个:

app1.get("/", function(req,res){
    id = 1;
    res.render(__dirname + '/connected.html', {equipment: 'Esteira 1', status: equip[id].status, historico: equip[id].hist});
});

这就是改变“状态”的原因

app1.get("/open", function(req,res){
    id = 1;
    equip[id].status = 'Conectado';
    equip[id].hist = equip[id].hist + equip[id].status;
    var now = new Date();
    time = dateFormat(now,"h:MM:ss");
    console.log(time+" - Equipment 'Esteira 1' has connected on port 3001");
    res.end
    });


app1.get("/closed", function(req,res){
    id = 1;
    equip[id].status = 'Desconectado';
    equip[id].hist = equip[id].hist + equip[id].status;
    var now = new Date();
    time = dateFormat(now,"h:MM:ss");
    console.log(time+" - Equipment 'Esteira 1' has disconnected");
    res.end
    });

1 个答案:

答案 0 :(得分:0)

app.get()是一个服务器端代码,它本身就没有权力改变客户端。

在客户端,您需要使用javascript代码定期轮询服务器(ajax)或让它通过websockets主动监听服务器以进行更改。这样你也可以选择刷新整个页面或只加载相关的更改(就像这个站点一样!)。

您应该研究以下相关技术:javascript,ajax,long-polling,socket.io