使用Web Socket 的原因是因為有些環境下只會允許HTTP 通訊通過防火牆(?)
但是又不想要使用HTTP 的格式傳送資料很佔用通訊效能
啟動Web Socket 的 ASCII 封包格式:
GET ws://127.0.0.1:8000/ HTTP/1.1
Host: 127.0.0.1:8000
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Version: 13
Sec-WebSocket-Key: Z2V2d3p3bmh5Znhia2xycQ==
Sec-WebSocket-Key 規定需要使用Base64 進行編碼,但是這個架構裡面用不到所以使用隨機生成的固定參數
https://onlineasciitools.com/generate-random-ascii
產生亂碼 ASCII
使用Base64 進行編碼
https://www.base64encode.org/
先使用Local Host Python 當作後端伺服器開發與使用TCP Test Tool 測試WebSocket
TCP Test Tool 當作Emedded Device 發送ASCII
Tool 傳送Web Socket PayLoad 示範:
81 81 28 38 b4 b2 60 (HEX)
之後PC 上面會除存PayLoad 的檔案,代表Web Socket 建立成功