WebTransport:incomingUnidirectionalStreams 属性
注意:此功能在 Web Workers 中可用。
incomingUnidirectionalStreams
的只读属性 WebTransport
接口表示由服务器打开的一个或多个单向流。返回 ReadableStream
的 WebTransportReceiveStream
对象。每个对象都可以用来可靠地从服务器读取数据。
“可靠”意味着数据传输和顺序得到保证。这提供了比 datagrams
更慢的传递(尽管比 WebSockets 快),但在需要可靠性和排序的情况下是必要的,比如聊天应用程序。
值
示例
一个初始函数用于从 ReadableStream
中读取 WebTransportReceiveStream
对象。然后将每个对象传递给另一个函数以从这些流中读取。
js
async function receiveUnidirectional() {
const uds = transport.incomingUnidirectionalStreams;
const reader = uds.getReader();
while (true) {
const { done, value } = await reader.read();
if (done) {
break;
}
// value is an instance of WebTransportReceiveStream
await readData(value);
}
}
async function readData(receiveStream) {
const reader = receiveStream.getReader();
while (true) {
const { done, value } = await reader.read();
if (done) {
break;
}
// value is a Uint8Array
console.log(value);
}
}
规范
规范 |
---|
WebTransport # dom-webtransport-incomingunidirectionalstreams |
浏览器兼容性
BCD 表格仅在浏览器中加载