Websocketd:以Unix方式實現的Websocket

banq發表於2015-02-15
Websocket是一種伺服器端向瀏覽器等客戶端主動推送的技術,各種語言有不同的實現,而websocketd是一種類似Linux普通命令的實現方式,使用非常簡單。非常類似20年的CGI技術

websocketd可作為後臺服務執行,它幫你處理WebSocket 連線,載入你的程式處理WebSocket, 在程式和瀏覽器直接傳送訊息。不需要任何依賴包,程式獨立。

以從1到10計數為例:使用Linux的sh命令:

#!/bin/bash

# Count from 1 to 10 with a sleep
for COUNT in $(seq 1 10); do
  echo $COUNT
  sleep 0.5
done
<p class="indent">


使用websocketd啟動這個程式:
$ websocketd --port=8080 my-program

現在就可以在瀏覽器頁面中使用Javascript連線8080埠,接受訊息:

var ws = new WebSocket('ws://localhost:8080/');

ws.onmessage = function(event) {
  console.log('Count is: ' + event.data);
};
<p class="indent">

相關文章