WebTransport: datagrams 属性
注意:此功能在 Web Workers 中可用。
WebTransport 接口的只读属性 datagrams 返回一个 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 |
浏览器兼容性
加载中…