WebTransport:datagrams 属性
注意:此功能在Web Workers中可用。
datagrams
是 WebTransport
接口的只读属性,它返回一个 WebTransportDatagramDuplexStream
实例,该实例可用于发送和接收数据报——不可靠的数据传输。
“不可靠”意味着无法保证数据传输,也无法保证按特定顺序到达。在某些情况下,这很好,并且可以提供非常快的交付。例如,您可能希望传输定期游戏状态更新,其中每条消息都取代到达的上一条消息,并且顺序并不重要。
值
示例
编写传出的数据报
WebTransportDatagramDuplexStream.writable
属性返回一个 WritableStream
对象,您可以使用写入器将数据写入该对象,以便传输到服务器。
js
const writer = transport.datagrams.writable.getWriter();
const data1 = new Uint8Array([65, 66, 67]);
const data2 = new Uint8Array([68, 69, 70]);
writer.write(data1);
writer.write(data2);
读取传入的数据报
WebTransportDatagramDuplexStream.readable
属性返回一个 ReadableStream
对象,您可以使用该对象从服务器接收数据。
js
async function readData() {
const reader = transport.datagrams.readable.getReader();
while (true) {
const { value, done } = await reader.read();
if (done) {
break;
}
// value is a Uint8Array.
console.log(value);
}
}
规范
规范 |
---|
WebTransport # dom-webtransport-datagrams |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。