的Javascript支持WebSocket的,所以你不需要额外的客户端框架使用它。请看看WebSocket based AngularJS application中声明的$connection service。
基本上可以监听消息:
$connection.listen(function (msg) { return msg.type == "CreatedTerminalEvent"; },
function (msg) {
addTerminal(msg);
$scope.$$phase || $scope.$apply();
});
听一次(伟大的请求/响应):
$connection.listenOnce(function (data) {
return data.correlationId && data.correlationId == crrId;
}).then(function (data) {
$rootScope.addAlert({ msg: "Console " + data.terminalType + " created", type: "success" });
});
和发送消息:
$connection.send({
type: "TerminalInputRequest",
input: cmd,
terminalId: $scope.terminalId,
correlationId: $connection.nextCorrelationId()
});
通常情况下,由于WebSocket连接是双向的,你也可以用它来获取数据fr请求/响应模型中的服务器。你可以有两种型号:
尽管如此,您可以同时使用这两种方法,并使用REST获取数据,使用WebSocket获取更新。
在服务器端,您可能需要使用Socket.io或任何服务器端框架才能拥有带WebSocket支持的后端。
不错的例子,但要注意$连接不是角度的一部分,以$开头的服务应该保留给角度api。 – pdem 2016-01-11 10:52:42