更新数据而不发送后端xhr请求jQuery

时间:2019-03-05 05:04:55

标签: javascript jquery ajax laravel-5 websocket

如果数据库中有任何更改,我需要更新通知,而不会降低整个网站的速度,所以我这样做:

HTML:

<div id="myid">{{ $db_data }}</div>

后端请求(使用Laravel):

$db_data = App\Marks::where(["subject_id" => 2])->pluck("marks")->first();
return view("myView", compact('db_data));
每秒

jQuery请求

setInterval(function() {
    $('#myid').load(location.href + " #myid");
    console.log("refreshed");
}, 1000);

这里的主要问题是通过每秒发送请求来减慢整个网站的速度。

有人建议我使用套接字,但是我不擅长JavaScript,因此我需要一个简单而通用的解决方案。

1 个答案:

答案 0 :(得分:0)

我建议您尝试学习laravel broadcasting。虽然需要很多时间,但值得。

这是使您的应用程序实时的最有效方法。 您只能在数据库中发生某些更改时才触发查询,而不是每秒更改一次。