WebSocket
在樹狀結構中按右鍵 ▸ 新增 ▸ WebSocket 請求。
Restorm 的 WebSocket 類型涵蓋三種相近的協定,透過協定欄位選擇:websocket
(原始)、socketio 與
mqtt。本頁談的是原始 WebSocket。

| 欄位 | 作用 |
|---|---|
| URL | ws:// 或 wss:// |
| 訊息 | 要傳送的負載 |
| 標頭 | 開啟連線時那個請求(handshake)的標頭 |
動作按鈕會開啟連線;回應面板會依收到的順序即時顯示訊框,並附上時間戳記。同一個按鈕 也負責關閉連線。
三個動作,需要搭配起來使用:
- WebSocket 連線 — 開啟連線並為它命名。它有兩個輸出:
connected(訊號,只發出 一次)與message(每收到一個訊框就發出一次); - WebSocket send — 在具名連線上傳送一份負載;
- 關閉 WebSocket 連線 — 把它關掉。
正是這樣的拆分,讓您能在同一張圖裡寫出「我先連線,用 HTTP 送出一個命令,然後確認 WebSocket 通知確實有到」。請參閱 連線與串流。
Restorm 能託管一個 WebSocket 伺服器。它會與同一個連接埠上的其他伺服器共用 socket:
一個 HTTP 模擬伺服器與一個 WebSocket 伺服器可以一起在 :8080 上監聽 — 普通請求交給
HTTP 路由,升級請求(upgrade)則交給 WebSocket 伺服器。請參閱
模擬 WebSocket、Socket.IO 與 MQTT。
十五個目標,與 Socket.IO 及 MQTT 共用:瀏覽器的 WebSocket、ws(Node.js)、
TypeScript、Socket.IO Client、MQTT.js、Python(websockets、paho-mqtt)、
Go(gorilla/websocket)、C#(ClientWebSocket)、Java(java-websocket)、Ruby、
Rust(tokio-tungstenite)、Swift(URLSessionWebSocketTask)、Kotlin(OkHttp)。