我有本地服務器輸出我的實時家庭傳感器數據,我想在瀏覽器中將其可視化。我可以打開到運行在任意端口上的本地服務器的websocket連接嗎?
我的問題是,我可以使用websocket打開從我的瀏覽器到本地服務器的連接嗎?我會怎麼做呢?
本地服務器運行在一個非http指定的端口號上,我不能改變它。
我有本地服務器輸出我的實時家庭傳感器數據,我想在瀏覽器中將其可視化。我可以打開到運行在任意端口上的本地服務器的websocket連接嗎?
我的問題是,我可以使用websocket打開從我的瀏覽器到本地服務器的連接嗎?我會怎麼做呢?
本地服務器運行在一個非http指定的端口號上,我不能改變它。
是的,沒有。
沒有:
的WebSockets不是原始TCP連接。它們具有HTTP兼容握手(兼顧安全性和與現有服務器的兼容性),並且每個數據包都有一些最小限度的幀,從而使WebSocket成爲基於消息的協議。此外,截至目前爲止瀏覽器中存在的當前WebSocket API和協議不直接支持二進制數據消息。他們只有UTF-8編碼的有效載荷。
是:
您可以使用websockify代理一個WebSockets的連接到原始的二進制TCP服務器。 websockify是一個python代理/橋樑,它具有二進制支持,並且還包含一個JavaScript庫,以便與其進行交互。此外,websockify還包含web-socket-js fallback/polyfill(在Flash中實現),該瀏覽器不具有本機WebSocket支持。缺點是必須在某處(在客戶端系統,服務器系統或其他系統上)運行websockify。此外,websockify目前僅限於Linux/UNIX。從另一方面來說,websockify有一個特殊的模式,可以用來啓動和包裝現有的服務。
聲明:我做了websockify。