---
title: WebSocket
slug: Web/API/WebSocket
tags:
- API
- Interface
- NeedsContent
- WebSocket
- WebSockets
- インターフェイス
translation_of: Web/API/WebSocket
---
{{APIRef("Web Sockets API")}}
WebSocket
オブジェクトは、サーバーへの WebSocket 接続の作成と管理、および接続上のデータの送受信に使用する API を提供します。
WebSocket
を構築するには、 WebSocket()
コンストラクターを使用してください。
コンストラクター
- {{domxref("WebSocket.WebSocket", "WebSocket(url[, protocols])")}}
- 新しく作成された
WebSocket
オブジェクトを返します。
定数
WebSocket.CONNECTING |
0 |
WebSocket.OPEN |
1 |
WebSocket.CLOSING |
2 |
WebSocket.CLOSED |
3 |
プロパティ
- {{domxref("WebSocket.binaryType")}}
- 接続で使用されるバイナリデータ型。
- {{domxref("WebSocket.bufferedAmount")}} {{readonlyinline}}
- キューに入れられたデータのバイト数。
- {{domxref("WebSocket.extensions")}} {{readonlyinline}}
- サーバーによって選択された拡張機能。
- {{domxref("WebSocket.onclose")}}
- 接続が閉じられたときに呼び出されるイベントリスナー。
- {{domxref("WebSocket.onerror")}}
- エラーが発生したときに呼び出されるイベントリスナー。
- {{domxref("WebSocket.onmessage")}}
- サーバーからメッセージを受信したときに呼び出されるイベントリスナー。
- {{domxref("WebSocket.onopen")}}
- 接続が開かれたときに呼び出されるイベントリスナー。
- {{domxref("WebSocket.protocol")}} {{readonlyinline}}
- サーバーによって選択されたサブプロトコル。
- {{domxref("WebSocket.readyState")}} {{readonlyinline}}
- 接続の現在の状態。
- {{domxref("WebSocket.url")}} {{readonlyinline}}
- WebSocket の絶対 URL。
メソッド
- {{domxref("WebSocket.close", "WebSocket.close([code[, reason]])")}}
- 接続を閉じます。
- {{domxref("WebSocket.send", "WebSocket.send(data)")}}
- 送信するデータをキューに入れます。
イベント
これらのイベントを待ち受けするには、 addEventListener()
を使用するか、イベントリスナーをこのインターフェイスの oneventname
プロパティへ代入します。
- {{domxref("WebSocket/close_event", "close")}}
WebSocket
による接続が閉じたときに発生します。
{{domxref("WebSocket/onclose", "onclose")}} プロパティからも利用できます。
- {{domxref("WebSocket/error_event", "error")}}
WebSocket
による接続が、データの一部が送信できなかったなどのエラーのために閉じた時に発生します。
{{domxref("WebSocket/onerror", "onerror")}} プロパティからも利用できます。
- {{domxref("WebSocket/message_event", "message")}}
WebSocket
を通じてデータを受信したときに発生します。
{{domxref("WebSocket/onmessage", "onmessage")}} プロパティからも利用できます。
- {{domxref("WebSocket/open_event", "open")}}
WebSocket
による接続が開いたときに発生します。
{{domxref("WebSocket/onopen", "onopen")}} プロパティからも利用できます。
例
// WebSocket 接続を作成
const socket = new WebSocket('ws://localhost:8080');
// 接続が開いたときのイベント
socket.addEventListener('open', function (event) {
socket.send('Hello Server!');
});
// メッセージの待ち受け
socket.addEventListener('message', function (event) {
console.log('Message from server ', event.data);
});
仕様書
仕様書 |
状態 |
{{SpecName("HTML WHATWG", "#network", "WebSocket")}} |
{{Spec2("HTML WHATWG")}} |
ブラウザーの互換性
{{Compat("api.WebSocket")}}
関連情報