CloseEvent

CloseEvent は、 WebSockets を使用して接続が閉じられたときにクライアントに送信されます。これは WebSocket オブジェクトの onclose 属性で指定されたリスナーに配信されます。

コンストラクター

CloseEvent()
新しい CloseEvent を作成します。

プロパティ

このインタフェースは親である Event からプロパティを継承します。

CloseEvent.code 読取専用
サーバーが送信したクローズコードを含む unsigned short を返します。以下の値は許可されたステータスコードです。以下の定義は、 IANA のウェブサイト [Ref] から供給されています。 1xxx コードは WebSocket 内部のみであり、転送されたデータと同じ意味ではありません (アプリケーション層プロトコルが無効な場合など)。 Firefox で指定できるコードは 1000 と 3000〜4999 [Source, Bug] のみです。
ステータスコード 名前 説明
0999 予約済みで使用されていません。
1000 Normal Closure 通常のクロージャ。接続が作成された目的に関係なく、接続は正常に完了しました。
1001 Going Away エンドポイントは、サーバーに障害が発生したか、またはブラウザーが接続を作成したページから離れようとしているために接続を終了しています。
1002 Protocol Error エンドポイントがプロトコルエラーのために接続を終了しています。
1003 Unsupported Data エンドポイントが受け入れられないタイプのデータを受信したため (たとえば、テキストのみのエンドポイントがバイナリデータを受信したとき)、接続が終了しています。
1004 予約済。 意味は将来定義されるかもしれません。
1005 No Status Received 予約済。予想されたにもかかわらずステータスコードが提供されなかったことを示します。
1006 Abnormal Closure 予約済。ステータスコードが必要なときに、接続が異常終了した (つまり、クローズフレームが送信されていない) ことを示すために使用されます。
1007 Invalid frame payload data 矛盾したデータ (例えば、テキストメッセージ内の非 UTF-8 データ) を含むメッセージを受信したため、エンドポイントは接続を終了しています。
1008 Policy Violation エンドポイントはポリシーに違反するメッセージを受信したため、接続を終了しています。これは一般的なステータスコードであり、コード 1003 と 1009 が適切でない場合に使用されます。
1009 Message too big 大きすぎるデータフレームを受信したため、エンドポイントは接続を終了しています。
1010 Missing Extension クライアントは、サーバーが1つ以上の拡張をネゴシエートすることを期待していましたがサーバーはそれを行わなかったため、サーバーは接続を終了しています。
1011 Internal Error サーバーは、予期しない条件が発生し要求の実行を妨げたため、接続を終了しています。
1012 Service Restart サーバーが再起動しているため、接続を終了しています。[Ref]
1013 Try Again Later サーバは、一時的な条件のために接続を終了しています。それはオーバーロードされ、クライアントの一部をキャストしています。[Ref]
1014 Bad Gateway サーバーがゲートウェイまたはプロキシとして機能し、アップストリームサーバーから無効なレスポンスを受信しました。これは 502 HTTP ステータスコードに似ています。
1015 TLS Handshake 予約済。TLS ハンドシェイクの実行に失敗 (サーバー証明書を確認できないなど) したために接続が閉じられたことを示します。
10161999 将来の WebSocket 標準での使用のために予約されています。
20002999 WebSocket 拡張機能で使用するために予約されています。
30003999 ライブラリとフレームワークで使用できます。 アプリケーションによって使用されない可能性があります。先着順で IANA に登録できます。
40004999 アプリケーションで使用することができます。
CloseEvent.reason 読取専用
サーバーが接続を終了した理由を示す DOMString を返します。これは特定のサーバーとサブプロトコルに固有です。
CloseEvent.wasClean 読取専用
接続がきれいに閉じられたかどうかを示す Boolean を返します。

メソッド

このインターフェースは親である Event からメソッドを継承しています。

CloseEvent.initCloseEvent()
作成された CloseEvent の値を初期化します。イベントがすでにディスパッチされている場合、このメソッドは何も行いません。このメソッドをもう使用しないでください。代わりに、CloseEvent() コンストラクタを使用してください。

仕様書

仕様書 状態 備考
HTML Living Standard
CloseEvent の定義
現行の標準 初回定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
CloseEventChrome 完全対応 13Edge 完全対応 12Firefox 完全対応 8
補足
完全対応 8
補足
補足 Prior to Firefox 12, the close code CLOSE_NORMAL was used when the channel was closed due to an unexpected error or unspecified error condition.
補足 Prior to Firefox 8, the WebSocket close event was sent to the listener as a simple event.
IE 完全対応 10Opera 完全対応 12.1Safari 完全対応 6WebView Android 完全対応 ≤37Chrome Android 完全対応 18Firefox Android 完全対応 8Opera Android 完全対応 12.1Safari iOS 完全対応 6Samsung Internet Android 完全対応 1.0
CloseEvent() constructorChrome ? Edge ? Firefox 完全対応 8IE ? Opera ? Safari ? WebView Android ? Chrome Android ? Firefox Android 完全対応 8Opera Android ? Safari iOS ? Samsung Internet Android ?
initCloseEvent
実験的非標準
Chrome 未対応 なしEdge 未対応 12 — 79Firefox 未対応 8 — 41IE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 未対応 なしChrome Android 未対応 なしFirefox Android 未対応 8 — 41Opera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 未対応 なし

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
実験的。動作が変更される可能性があります。
実験的。動作が変更される可能性があります。
非標準。ブラウザー間の互換性が低い可能性があります。
非標準。ブラウザー間の互換性が低い可能性があります。
実装ノートを参照してください。
実装ノートを参照してください。

関連情報