WebSocketStream: closed 屬性

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

注意:此功能在 Web Workers 中可用。

WebSocketStream 介面的只讀屬性 closed 返回一個 Promise,該 Promise 在套接字連線關閉時會 fulfilled 並帶有一個物件。該物件包含關閉程式碼和原因。

一個 Promise,該 Promise 在 fulfilled 時會帶有一個包含以下屬性的物件

closeCode

一個表示關閉程式碼的數字(請參閱 CloseEvent 狀態碼的完整列表)。

reason

一個表示套接字連線關閉原因的可讀字串。

如果 WebSocket 連線未乾淨地關閉,則 Promise 會 reject(對於乾淨關閉,必須在 WebSocket 關閉握手完成後之後關閉相關的 TCP 連線)。

示例

js
const wsURL = "wss://127.0.0.1/";
const wss = new WebSocketStream(wsURL);

wss.closed.then((result) => {
  writeToScreen(
    `DISCONNECTED: code ${result.closeCode}, message "${result.reason}"`,
  );
  console.log("Socket closed", result.closeCode, result.reason);
});

有關完整示例和詳細說明,請參閱 使用 WebSocketStream 編寫客戶端

規範

目前不是任何規範的一部分。有關標準化進展,請參閱 https://github.com/whatwg/websockets/pull/48

瀏覽器相容性

另見