我想做一些事情,如果在我的数据库字段中发生任何删除/获取/发布/放置操作,这些更改也应该反映在客户端而不刷新。
我的意思是,当发生任何更改时,服务器应向客户端发送警报以自动刷新或重新加载页面。
我通过$interval
完成了这种工作,但是我知道这不是一个好习惯。所以我不想达到这个目的。
我想用websocket
或其他一些好的方法来实现这一目标,但是却不知道如何实现。
您在这里找到用$interval
解决的当前代码段:
app.controller('crudCtrl', function($scope, $http) {
$scope.getAllContact = function() {
var data = $http.get("http://127.0.0.1:8000/api/v1/contact/")
.then(function(response) {
$scope.contacts = response.data;
$scope.getAllContact();
$interval($scope.getAllContact, 10000);
}, function(response) {
$scope.getAllContact();
$interval($scope.getAllContact, 10000);
});
};
$scope.getAllContact();
以上代码片段每毫秒都可以很好地刷新页面,但这不是一个好习惯,因为,它也受到GET
请求的影响而到达数据库。
所以我想用websocket
或其他任何好的方法来实现这一点
但是我不知道怎么做以及在哪里。
有人可以解决我这个问题吗?
可选:在我的数据库中,有四个字段userid, name, email, phone
,因此,如果此字段中的任何一个被编辑/删除/添加或发生任何更改,我想自动刷新页面