WebSocket: close イベント

close イベントは、 WebSocket の接続が閉じられたときに発生します。

構文

イベント名を addEventListener() などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。

js
addEventListener("close", (event) => {});

onclose = (event) => {};

イベント型

CloseEvent です。 Event から継承しています。

Event CloseEvent

イベントプロパティ

下記に示したプロパティに加えて、親インターフェイスである Event からのプロパティが利用できます。

code 読取専用

サーバーが送信したクローズコードを unsigned short で返します。

reason 読取専用

サーバーが接続を閉じた理由を示す文字列を返します。これは、特定のサーバーとサブプロトコルに固有のものです。

wasClean 読取専用

接続がきれいに閉じられたか否かを示す論理値を返します。

接続が閉じられる時が分かれば、 UI を更新させたり、閉じた接続についてのデータを保存したりすることができます。以下の例では exampleSocket と呼ばれる変数が開かれた WebSocket を参照しており、このハンドラーが、ソケットが閉じられた場面を扱います。

js
exampleSocket.addEventListener("close", (event) => {
  console.log("The connection has been closed successfully.");
});

同じことを、イベントハンドラープロパティを用いて行うこともできます。

js
exampleSocket.onclose = (event) => {
  console.log("The connection has been closed successfully.");
};

仕様書

Specification
WebSockets Standard
# dom-websocket-onclose

ブラウザーの互換性

BCD tables only load in the browser

関連情報