2013-10-24 77 views
0

在* nix的一些CLI應用程序使用一個$ BROWSER環境變量,以便它可以調用$BROWSER http://www.unix.com使用WebSockets控制瀏覽器窗口

我只是在尋找一個可執行文件設置爲$BROWSER實際控制遠程任意HTML5瀏覽器窗口通過Websockets。

編寫可執行文件將很容易 - 我所要做的就是通過websockets連接併發送一些消息。

問題: 但是瀏覽器端呢?有沒有一個JS庫讓我通過Websockets控制瀏覽器(至少設置它的window.location)?

回答

0

您可以使用sock.js與服務器進行通信,它支持多種服務器技術: https://github.com/sockjs/sockjs-client

那我就建議你不要使用window.location的,因爲它會刷新頁面,這就背離了點的websockets。

當更改事件被觸發時,您可以使用類似angularjs的東西來更新視圖。

的index.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使用angularjs更新視圖一個服務器的NodeJS的例子: https://github.com/kmturley/angular-websockets