WebSocket: close イベント

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

構文

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

addEventListener('close', (event) => { })

onclose = (event) => { }

イベント型

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

Event CloseEvent

イベントプロパティ

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

code 読取専用

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

reason 読取専用

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

wasClean 読取専用

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

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

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

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

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

仕様書

Specification
WebSockets Standard
# dom-websocket-onclose

ブラウザーの互換性

BCD tables only load in the browser

関連情報