0

*nix 中的一些 CLI 应用程序使用 $BROWSER 环境变量,因此它可以调用$BROWSER http://www.unix.com

我只是在寻找一个可执行文件来设置,因为$BROWSER它实际上通过 Websockets 控制远程任意 HTML5 浏览器窗口。

编写可执行文件很容易——我所要做的就是通过 websockets 连接并发送一些消息。

问题:但是浏览器端呢?window.location是否有一个 JS 库可以让我通过 Websockets控制浏览器(至少设置它)?

4

1 回答 1

0

您可以使用 sock.js 与服务器通信,它支持多种服务器技术: https ://github.com/sockjs/sockjs-client

然后我建议你不要使用 window.location 因为它会刷新页面,这会破坏 websockets 的要点。

当更改事件被触发时,您可以使用 angularjs 之类的东西来更新视图。

索引.html

<div ng-view></div>
<script src="http://cdn.sockjs.org/sockjs-0.3.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js">
<script src="js/App.js"></script>

Child.js

angular.module('App', [])

    .controller('AppCtrl', function ($scope) {
        var sock = new SockJS('http://localhost:9999/chat');

        $scope.messages = [];
        $scope.sendMessage = function () {
            sock.send($scope.messageText);
            $scope.messageText = "";
        };

        sock.onmessage = function (e) {
            $scope.messages.push(e.data);
            $scope.$apply();
        };
    });

我创建了一个使用 sockjs 的 nodejs 服务器示例,以使用 angularjs 更新视图: https ://github.com/kmturley/angular-websockets

于 2013-10-24T23:22:41.427 回答