Javascript 如何不断地将信息从后端获取到节点中的dom中?

Javascript 如何不断地将信息从后端获取到节点中的dom中?,javascript,node.js,mongodb,dom,Javascript,Node.js,Mongodb,Dom,我有一个关于DOM和后端的关系的问题。我有一个运行node.js和express的网站,现在我想实现一个“实时计数器”功能 计数器应每隔10秒左右执行一次,并向用户显示当前“分数”。问题是这个分数保存在我的Mongo数据库中,但我想向用户显示新信息(不加载全新页面,这会很烦人) 对我来说,运行一个每隔几秒钟就开始表演的脚本没有问题,但我必须: 1) 让脚本在客户端运行并从我的数据库中检索信息,如下所示: setInterval(function(){ //get Information

我有一个关于DOM和后端的关系的问题。我有一个运行node.js和express的网站,现在我想实现一个“实时计数器”功能

计数器应每隔10秒左右执行一次,并向用户显示当前“分数”。问题是这个分数保存在我的Mongo数据库中,但我想向用户显示新信息(不加载全新页面,这会很烦人)

对我来说,运行一个每隔几秒钟就开始表演的脚本没有问题,但我必须:

1) 让脚本在客户端运行并从我的数据库中检索信息,如下所示:

setInterval(function(){ 
    //get Information from Server (X)
    //manipulate div in the DOM 

    }, 1000
); 
或者2)让脚本在服务器端运行,并从那里以某种方式操纵DOM

setInterval(function(){
     //get value from DB
     //somehow access DOM and change the value there (X)

    }, 1000
);
(对我来说,“(X)”标志着棘手的部分)

我还知道,实际上不可能从节点操作DOM,从客户端访问我的DB也不是一个好主意。但我在这里没有主意了。你们中的一些人能向我解释一下如何解决这个问题吗

非常感谢,
Paul

您可以使用socket.io解决此类问题,您可以在特定时间间隔或任何特定事件上从服务器发送数据。然后订阅该事件以实时获取数据

使用socket.socket.io就是一个很好的例子。或者,如果您想使用jquery的ajax函数,可以这样做,并根据响应相应地更新HTML元素。我同意socket.io是一个不错的选择,但我也强烈建议您研究firebase,它就像带有api的mongo+socket.io