Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Note: This feature is available in Web Workers.
Non-standard: This feature is not standardized. We do not recommend using non-standard features in production, as they have limited browser support, and may change or be removed. However, they can be a suitable alternative in specific cases where no standard option exists.
The closed read-only property of the WebSocketStream interface returns a Promise that fulfills with an object once the socket connection is closed. The object contains the closing code and reason.
A promise, which fulfills with an object containing the following properties:
closeCodeA number representing the closing code (see the full list of CloseEvent status codes).
reasonA string representing a human-readable description of the reason why the socket connection was closed.
The promise rejects if the WebSocket connection did not close cleanly (for a clean close, the associated TCP connection must be closed after the WebSocket closing handshake is completed).
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);
});See Using WebSocketStream to write a client for a complete example with full explanation.
Not currently a part of any specification. See https://github.com/whatwg/websockets/pull/48 for standardization progress.