Javascript支持WebSocket,因此您不需要其他客户端框架即可使用它。请查看此基于WebSocket的AngularJS应用程序中声明的$connection服务。
基本上,您可以听消息:
$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连接是双向的并且具有良好的支持,因此您还可以使用它从请求/响应模型中从服务器获取数据。您可以有两种模型:
发布者/订阅者 :客户端在其中声明对某些主题的兴趣并为具有该主题的消息设置处理程序,然后服务器在认为合适时发布(或推送)消息。
请求/响应 :客户端在其中发送带有requestID(或correlationId)的消息,并监听该requestId的单个响应。
不过,您可以同时拥有两者,并使用REST来获取数据,并使用WebSocket来获取更新。
在服务器端,您可能需要使用Socket.io或任何服务器端框架,才能使后端具有WebSocket支持。



