Newly available 主要ブラウザで対応済みだが、古いバージョンでは未対応の場合がある。

対応ブラウザ

機能 デスクトップ モバイル
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
97
97
114
26.4
97
26.4
byob_readers

BYOB読者サポート

109
109
114
26.4
109
26.4

WebTransport インターフェースの close() メソッドは、進行中の WebTransport セッションを終了します。

97
97
114
26.4
97
26.4

WebTransport インターフェースの closed 読み取り専用プロパティは、トランスポートが閉じられたときに解決する Promise を返します。

97
97
114
26.4
97
26.4

WebTransport インターフェースの read-only プロパティである congestionControl は、データ送信時にアプリケーションがスループットを優先するか、レイテンシを優先するかを示します。

114
26.4
26.4

WebTransport インターフェースの createBidirectionalStream() メソッドは、双方向ストリームを非同期で開き、それを返します。

97
97
114
26.4
97
26.4
createBidirectionalStream (options sendOrder parameter)

`options.sendOrder` パラメータ

119
26.4
26.4

WebTransport インターフェースの createUnidirectionalStream() メソッドは、一方向ストリームを非同期で開きます。

97
97
114
26.4
97
26.4
createUnidirectionalStream (byob readers)

BYOB読者サポート

109
109
114
26.4
109
26.4
createUnidirectionalStream (options sendOrder parameter)

`options.sendOrder` パラメータ

119
26.4
26.4

WebTransport インターフェースの datagrams read-only プロパティは、データグラムの送受信(非信頼性データ転送)に使用できる WebTransportDatagramDuplexStream インスタンスを返します。

97
97
114
26.4
97
26.4

WebTransport インターフェースの getStats() メソッドは、HTTP/3 接続の統計情報を含むオブジェクトを非同期で返します。

114
26.4
26.4

WebTransport インターフェースの `incomingBidirectionalStreams` 読み取り専用プロパティは、サーバーによって開かれた 1 つ以上の双方向ストリームを表します。このプロパティは、WebTransportBidirectionalStream オブジェクトの `ReadableStream` を返します。各ストリームを使用して、サーバーからデータを確実に読み取り、サーバーへデータを書き戻すことができます。

97
97
114
26.4
97
26.4

WebTransport インターフェースの `incomingUnidirectionalStreams` 読み取り専用プロパティは、サーバーによって開かれた 1 つ以上の単方向ストリームを表します。このプロパティは、`WebTransportReceiveStream` オブジェクトの `ReadableStream` を返します。各ストリームを使用して、サーバーからデータを確実に読み取ることができます。

97
97
114
26.4
97
26.4

WebTransport インターフェースの `ready` 読み取り専用プロパティは、トランスポートが使用可能になった時点で解決する Promise を返します。

97
97
114
26.4
97
26.4

WebTransport インターフェースの read-only プロパティは、その接続が信頼性のあるトランスポートのみをサポートしているか、それとも信頼性のないトランスポート(UDP など)もサポートしているかを示します。

114
26.4
26.4

WebTransport() コンストラクタは、新しい WebTransport オブジェクトのインスタンスを作成します。

97
97
114
26.4
97
26.4
WebTransport (options allowPooling parameter)

`options.allowPooling` パラメータ

114
26.4
26.4
WebTransport (options congestionControl parameter)

`options.congestionControl` パラメータ

114
26.4
26.4
WebTransport (options requireUnreliable parameter)

`options.requireUnreliable` パラメータ

114
26.4
26.4
WebTransport (options serverCertificateHashes parameter)

`options.serverCertificateHashes` パラメータ

100
100
125
26.4
100
26.4

WebTransport API の WebTransportBidirectionalStream インターフェースは、サーバーまたはクライアントによって作成され、信頼性の高い転送に使用できる双方向ストリームを表します。このインターフェースは、受信データを読み取るための WebTransportReceiveStream および送信データを書き込むための WebTransportSendStream へのアクセスを提供します。

97
97
114
26.4
97
26.4

WebTransportBidirectionalStream インターフェースの readable 読み取り専用プロパティは、受信データを確実に読み取るために使用できる WebTransportReceiveStream インスタンスを返します。

97
97
114
26.4
97
26.4
readable (returns WebTransportReceiveStream)

`WebTransportReceiveStream` を返します(以前の仕様では `ReadableStream` を返していました)

114
26.4
26.4

WebTransportBidirectionalStream インターフェースの writableReadOnly プロパティは、送信データの書き込みに使用できる WebTransportSendStream インスタンスを返します。

97
97
114
26.4
97
26.4
writable (returns WebTransportSendStream)

`WebTransportSendStream` を返します(以前の仕様では `WritableStream` を返していました)

114
26.4
26.4

WebTransport API の WebTransportDatagramDuplexStream インターフェースは、クライアントとサーバー間のデータグラムの非信頼性トランスポートに使用できる双方向ストリームを表します。このインターフェースは、受信データグラムを読み取るための ReadableStream、送信データグラムを書き込むための WritableStream、およびストリームに関連するさまざまな設定や統計情報へのアクセスを提供します。

97
97
114
26.4
97
26.4
byob_readers

BYOB読者サポート

109
109
26.4
109
26.4

WebTransportDatagramDuplexStream インターフェースの incomingHighWaterMark プロパティは、受信データチャンクのハイウォーターマークを取得または設定します。これは、受信側の ReadableStream の内部キューが満杯とみなされる前に到達し得る、チャンク単位での最大サイズです。詳細については、「内部キューとキューイング戦略」を参照してください。

97
97
114
26.4
97
26.4

WebTransportDatagramDuplexStream インターフェースの incomingMaxAge プロパティは、受信データグラムの最大有効期間(ミリ秒単位)を取得または設定します。

97
97
114
26.4
97
26.4

WebTransportDatagramDuplexStream インターフェースの読み取り専用プロパティ `maxDatagramSize` は、`WebTransportDatagramDuplexStream.writable` に書き込むことができる送信データグラムの最大許容サイズ(バイト単位)を返します。

97
97
114
26.4
97
26.4

WebTransportDatagramDuplexStream インターフェースの outgoingHighWaterMark プロパティは、送信されるデータチャンクのハイウォーターマークを取得または設定します。これは、送信側の WritableStream の内部キューが満杯とみなされる前に到達し得る、チャンク単位での最大サイズです。詳細については、「内部キューとキューイング戦略」を参照してください。

97
97
114
26.4
97
26.4

WebTransportDatagramDuplexStream インターフェースの outgoingMaxAge プロパティは、送信データグラムの最大有効期間をミリ秒単位で取得または設定します。

97
97
114
26.4
97
26.4

WebTransportDatagramDuplexStream インターフェースの readable 読み取り専用プロパティは、ストリームから受信したデータグラムを非信頼性モードで読み取るために使用できる ReadableStream インスタンスを返します。

97
97
114
26.4
97
26.4

WebTransport API の WebTransportError インターフェースは、この API に関連するエラーを表します。このエラーは、サーバーエラー、ネットワーク接続の問題、またはクライアント側による中止操作(たとえば、WritableStream.abort() の呼び出しによるものなど)によって発生する可能性があります。

97
97
114
26.4
97
26.4

WebTransportError インターフェースの `source` プロパティは読み取り専用であり、エラーの原因を示す列挙値を返します。

97
97
114
26.4
97
26.4

WebTransportError インターフェースの read-only プロパティである streamErrorCode は、このエラーに対応するアプリケーションプロトコルのエラーコードを示す 0 から 255 までの数値を返します。エラーコードが存在しない場合は null を返します。

97
97
114
26.4
97
26.4

WebTransportError() コンストラクタは、新しい WebTransportError オブジェクトのインスタンスを作成します。

97
97
114
26.4
97
26.4

WebTransport API の WebTransportReceiveStream インターフェースは、受信する一方向または双方向の WebTransport ストリームから読み取りを行うために使用できる ReadableStream です。

114
26.4
26.4

WebTransportReceiveStream インターフェースの getStats() メソッドは、現在のストリームの統計情報を含むオブジェクトを非同期で返します。

114
26.4
26.4

WebTransport API の WebTransportSendStream インターフェースは、一方向または双方向の WebTransport ストリームにおいて、送信データを転送するために使用される、特殊な WritableStream です。

114
26.4
26.4

WebTransportSendStream インターフェースの getStats() メソッドは、現在のストリームの統計情報を含むオブジェクトを非同期で返します。

114
26.4
26.4
getWriter
114
26.4
26.4

WebTransportSendStream インターフェースの sendOrder プロパティは、このストリームの送信優先度を、同様の値が設定されている他のストリームとの相対的な位置関係で示します。

121
26.4
26.4
1+対応 (バージョン) 未対応 注釈あり サブ機能の解説は MDN Web Docs (CC BY-SA 2.5)
注釈 2件
制限事項
  • このブラウザでは部分的にしか実装されていません
実装メモ
  • `WebTransportSendStream` の代わりに `WritableStream` を返します。
注釈 2件
制限事項
  • このブラウザでは部分的にしか実装されていません
実装メモ
  • メソッドは定義されていますが、未実装のエラーが発生します。

基本構文

JAVASCRIPT
async function initTransport(url) {
  // Initialize transport connection
  const transport = new WebTransport(url);

  // The connection can be used once ready fulfills
  await transport.ready;
  return transport;
}

実務での使いどころ

  • WebTransport の活用

    WebTransport はウェブトランスポート API のインターフェイスで、ユーザーエージェントが HTTP/3 サーバーに接続し、単方向または双方向で信頼性のあるトランスポートおよび信頼性のないトランスポートを開始し、接続が必要できなくなった時点で接続を閉じるための機能を提供します。

注意点

  • 古いブラウザでは対応していない場合がある。

実装メモ

  • 一部の API はセキュアコンテキスト (HTTPS) やユーザー操作起点を必要とする。利用前に要件を確認すること。