WebTransport: getStats() 方法
注意:此功能在 Web Workers 中可用。
WebTransport 接口的 getStats() 方法会异步返回一个包含 HTTP/3 连接统计信息的对象。
语法
getStats()
参数
无。
返回值
一个 Promise,它解析为一个包含 HTTP/3 连接统计信息的对象。返回的对象可能有以下属性/统计数据
时间戳-
一个
DOMHighResTimeStamp,指示收集统计信息的时间戳,相对于 1970 年 1 月 1 日 UTC。 bytesSent-
一个正整数,表示在 QUIC 连接上发送的字节数,包括重传。请注意,此计数不包括 QUIC 使用的协议(如 UDP)的额外数据,或任何其他外部帧。
packetsSent-
一个正整数,表示在 QUIC 连接上发送的数据包数量,包括已知已丢失的数据包。
packetsLost-
一个正整数,表示在 QUIC 连接上丢失的数据包数量。当数据包被声明为丢失时,此值会增加,如果随后收到,则会减少。
numOutgoingStreamsCreated-
一个正整数,表示在 QUIC 连接上创建的出站 QUIC 流的数量。
numIncomingStreamsCreated-
一个正整数,表示在 QUIC 连接上创建的入站 QUIC 流的数量。
bytesReceived-
一个正整数,表示在 QUIC 连接上接收的总字节数。此计数包括来自流的重复数据,但不包括 QUIC 使用的协议(如 UDP)的额外数据,或任何其他外部帧。
packetsReceived-
一个正整数,表示在 QUIC 连接上接收的总数据包数量,包括无法处理的数据包。
smoothedRtt-
一个
DOMHighResTimeStamp,包含当前在连接上观察到的平滑 往返时间 (RTT),它是在考虑了确认延迟后,根据终结点的 RTT 样本指数加权移动平均计算得出的。 rttVariation-
一个
DOMHighResTimeStamp,包含当前在连接上观察到的往返时间样本的平均变化。 minRtt-
一个
DOMHighResTimeStamp,包含在整个连接中观察到的最小往返时间。 数据报-
一个包含通过连接进行数据报传输的统计信息的对象。该对象具有以下属性
时间戳-
一个
DOMHighResTimeStamp,指示收集统计信息的时间戳,相对于 1970 年 1 月 1 日 UTC。 expiredOutgoing-
一个正整数,表示由于过期而被从发送队列中丢弃的数据报数量。请注意,发送队列中数据报在过期前的最大年龄可以在
outgoingMaxAge中找到。 droppedIncoming-
一个正整数,表示被丢弃的入站数据报的数量。如果应用程序在新的数据报填满
readable流接收队列之前未读取它们,则会丢弃入站数据报。 lostOutgoing-
一个正整数,表示已声明丢失的已发送数据报的数量。请注意,数据报可能会被声明为丢失,例如,如果在超时内没有收到确认,或者先收到了更晚数据报的确认。
示例
下面的示例使用 await 等待 getStats() 返回的 Promise。当 Promise fulfilled 时,stats 对象中 bytesSent 属性的结果将被记录到控制台。
const stats = await transport.getStats();
console.log(`Bytes send: ${stats.bytesSent}`);
规范
| 规范 |
|---|
| WebTransport # dom-webtransport-getstats |
浏览器兼容性
加载中…