如何在MongoDb数据库更新时即时更新flask前端?

问题描述 投票:1回答:1

我正在更新一个流式应用的MongoDb数据库。我希望数据库中的变化能够反映在前端。

在前端,我目前正在对数据库进行刷新,但我必须手动刷新以获得新的更新。定期刷新并不是一个好的选择,因为更新可能太快了,很多时候一秒钟,甚至很慢,一小时几次。

我遇到了SSE(服务器发送事件)。但不知道它是否能用在我的案例中。

database mongodb flask server-sent-events real-time-updates
1个回答
0
投票

我所寻找的是一个好的基于PUSH的方法。后台服务器可以改成前台客户端。

我使用的是:一个基于PULL的方法,而不是.通常,在这种情况下,AJAX请求与javascript中的setInt()可以使用。在这种情况下,不必刷新整个页面。但只需使用ajax请求定期检查更新的时间间隔。并在更新的情况下可以在相关的Html中追加填充相应的内容。

这是我使用的方法。

function update(){ // This functions is called repeatedly 
    $.ajax({
        url: "/update/",
        type: "POST",
        success: function(resp){
            $('div.stats').html(resp.data); // append/fill to appropriate div
        }
    });
}

var myVar = setInterval(update, 1000); // update every 1sec 

这是很常用到的方法.这样就达到了我的目的。

也有办法有基于PUSH的方法来代替。请看 COMET 编程。但我找不到一个合适的工具来与web框架同步进行。

© www.soinside.com 2019 - 2024. All rights reserved.