我是 Angular.js 和 Node.js 的初学者,但我已经意识到制作实时应用程序有两种可能的方法。第一个是使用 Socket.io,另一个是使用带有 setInterval() 函数的 RESTful 作为客户端解决方案。我使用这两种替代方法构建了我的应用程序,但我不知道为什么使用一种替代另一种更好。
我的控制器使用 Angular.js(Socket.io 替代品):
function MyController($scope, socket) {
socket.on('test', function(data){
$scope.data = data;
console.log($scope.data);
});
}
我的控制器使用 Angular.js(RESTful 替代方案):
function MyController($scope, $http) {
setInterval(function() {
$http.get('/test.json')
.success(function(data, status, headers, config) {
$scope.data = data;
console.log($scope.data);
});
}, 1000);
}
这些做事方式之间有什么区别?提前致谢!