WebTransportReceiveStream: getStats() 方法

实验性:这是一个实验性技术
在生产环境中使用此功能之前,请仔细查看浏览器兼容性表

安全上下文:此功能仅在安全上下文(HTTPS) 中可用,在部分或所有支持的浏览器中可用。

注意:此功能在Web Workers中可用。

getStats() 方法是 WebTransportReceiveStream 接口的方法,它异步返回一个包含当前流统计信息的 对象。

统计信息包括到达该流的已排序字节总数(忽略网络开销,直至第一个丢失的字节)以及应用程序已读取的字节总数。因此,它提供了衡量应用程序在该特定流上从服务器消耗字节的速度。

语法

js
getStats()

参数

无。

返回值

一个Promise,它解析为一个包含有关当前流的统计信息的对象。返回的对象具有以下属性

timestamp

一个DOMHighResTimeStamp,它指示收集统计信息的时间戳,相对于 1970 年 1 月 1 日,UTC。

bytesReceived

一个正整数,表示该流接收到的字节数,直至第一个丢失的字节。该数字不包括任何网络开销,并且只能增加。

bytesRead

一个正整数,表示应用程序从该 WebTransportReceiveStream 流中读取的字节数。该数字只能增加,并且始终小于或等于 bytesReceived

示例

以下代码片段使用 await 来等待 getStats() 返回的 Promise。当 promise 履行时,尚未读取的字节数将被记录到控制台中。

js
const stats = await stream.getStats();
const unConsumedBytes = stats.bytesReceived - stats.bytesRead;
console.log(`Bytes in reader queue: ${unConsumedBytes}`);

规范

规范
WebTransport
# dom-webtransportreceivestream-getstats

浏览器兼容性

BCD 表格仅在浏览器中加载