RTCRtpSender:getStats() 方法

Baseline 已广泛支持

此功能已成熟,并可在多种设备和浏览器版本上运行。自 2019 年 3 月以来,它已在所有浏览器中可用。

RTCRtpSender 方法 getStats() 会异步请求一个 RTCStatsReport 对象,该对象提供关于拥有该发送器的 RTCPeerConnection 上传出流量的统计信息,并返回一个 Promise,当结果可用时该 Promise 会被 fulfilled。

语法

js
getStats()

参数

无。

返回值

一个 JavaScript Promise,一旦统计数据可用就会被 fulfilled。Promise 的 fulfilled 处理程序会接收一个 RTCStatsReport 对象作为参数,其中包含收集到的统计数据。

返回的 RTCStatsReport 会累积使用 RTCRtpSender 发送的所有流的统计数据,以及这些流所依赖的任何统计数据。

这些可能包括,例如,具有 类型 的统计数据:outbound-rtpcandidate-pairlocal-candidateremote-candidate

示例

这个简单的例子获取 RTCRtpSender 的统计信息,并更新元素的 innerText 以显示发送器上请求的当前往返时间。

js
sender.getStats().then((stats) => {
  document.getElementById("currentRTT").innerText = stats.roundTripTime;
});

规范

规范
WebRTC:浏览器中的实时通信
# widl-RTCRtpSender-getStats-Promise-RTCStatsReport

浏览器兼容性

另见