WebSocket オブジェクトは、サーバーへの WebSocket 接続の作成と管理、および接続上のデータの送受信に使用する API を提供します。

WebSocket を構築するには、WebSocket() コンストラクタを使用します。

コンストラクタ

WebSocket(url[, protocols])
新しく作成された WebSocket オブジェクトを返します。

プロパティ

WebSocket.binaryType
接続で使用されるバイナリデータ型。
WebSocket.bufferedAmount 読取専用
キューに入れられたデータのバイト数。
WebSocket.extensions 読取専用
サーバーによって選択された拡張機能。
WebSocket.onclose
接続が閉じられたときに呼び出されるイベントリスナー。
WebSocket.onerror
エラーが発生したときに呼び出されるイベントリスナー。
WebSocket.onmessage
サーバーからメッセージを受信したときに呼び出されるイベントリスナー。
WebSocket.onopen
接続が開かれたときに呼び出されるイベントリスナー。
WebSocket.protocol 読取専用
サーバーによって選択されたサブプロトコル。
WebSocket.readyState 読取専用
接続の現在の状態。
WebSocket.url 読取専用
WebSocket の絶対 URL。

メソッド

WebSocket.close([code[, reason]])
接続を閉じます。
WebSocket.send(data)
送信するデータをキューに入れます。

// 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);
});

仕様

仕様書 ステータス コメント
HTML Living Standard
WebSocket の定義
現行の標準 初回定義

ブラウザの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
WebSocketChrome 完全対応 ありEdge 完全対応 ありFirefox 完全対応 11
補足
完全対応 11
補足
補足 See bug 695635.
未対応 7 — 11
接頭辞付き 補足
接頭辞付き Moz のベンダー接頭辞が必要
補足 Message size limited to 16 MB (see bug 711205).
未対応 4 — 6
補足
補足 Message size limited to 16 MB (see bug 711205).
IE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile 完全対応 ありFirefox Android 完全対応 14
補足
完全対応 14
補足
補足 See bug 695635.
未対応 7 — 14
接頭辞付き 補足
接頭辞付き Moz のベンダー接頭辞が必要
補足 Message size limited to 16 MB (see bug 711205).
Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
WebSocket() constructorChrome 完全対応 ありEdge ? Firefox 完全対応 7
完全対応 7
未対応 4 — 7
補足
補足 Parameter protocols not supported.
IE ? Opera 完全対応 ありSafari ? WebView Android ? Chrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 7Opera Android ? Safari iOS ? Samsung Internet Android ?
binaryTypeChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
bufferedAmountChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
closeChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 8
完全対応 8
未対応 4 — 8
補足
補足 Parameters not supported, see bug 674716.
IE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
close eventChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?
error eventChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?
extensionsChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 8IE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 8Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
message eventChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?
oncloseChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
onerrorChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
onmessageChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
onopenChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
open eventChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?
protocolChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
readyStateChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
sendChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 18
補足
完全対応 18
補足
補足 See bug 775368.
未対応 11 — 18
補足
補足 Only parameter of type ArrayBuffer and String supported.
未対応 8 — 11
補足
補足 Only parameter of type String supported.
未対応 4 — 8
補足
補足 Only parameter of type String supported. Returns boolean.
IE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
urlChrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 ありIE ? Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
Supports protocol as specified by RFC 6455Chrome 完全対応 16Edge 完全対応 12Firefox 完全対応 11IE 完全対応 10Opera 完全対応 15Safari 完全対応 6WebView Android 完全対応 ありChrome Android 完全対応 18Edge Mobile 完全対応 12Firefox Android 完全対応 14Opera Android 完全対応 14Safari iOS 完全対応 6Samsung Internet Android ?
Available in workersChrome 完全対応 ありEdge 完全対応 ありFirefox 完全対応 37IE ? Opera ? Safari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile 完全対応 ありFirefox Android 完全対応 37Opera Android ? Safari iOS ? Samsung Internet Android ?

凡例

完全対応  
完全対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。
使用するには、ベンダー接頭辞または異なる名前が必要です。
使用するには、ベンダー接頭辞または異なる名前が必要です。

関連項目

ドキュメントのタグと貢献者

このページの貢献者: mdnwebdocs-bot, tanaka0325, silverskyvicto, toVersus, shuuji3
最終更新者: mdnwebdocs-bot,