RTCIceTransport: getRemoteCandidates() 方法

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

RTCIceTransport 接口的 getRemoteCandidates() 方法返回一个数组,该数组包含在当前 ICE 收集会话中,迄今为止从远程对等方收到的每个候选者对应的一个 RTCIceCandidate 对象。

每当您的信令代码调用 RTCPeerConnection.addIceCandidate() 将收到的候选者添加到 ICE 会话时,ICE 代理就会将其放入此函数返回的列表中。

语法

js
getRemoteCandidates()

参数

无。

返回值

一个数组,包含在当前 ICE 候选者收集会话中,迄今为止从远程对等方收到的每个候选者对应的一个 RTCIceCandidate 对象。

重要的是要记住,无法将这些远程候选者与兼容的本地候选者相关联。要查找迄今为止找到的最佳匹配项,请调用 RTCIceTransport.getSelectedCandidatePair()

示例

这个简单的示例从 RTCPeerConnection 的第一个 RTCRtpSender 获取 RTCIceTransport 的远程候选者列表,然后将列表中的所有候选者输出到控制台。

js
const remoteCandidates = pc
  .getSenders()[0]
  .transport.transport.getRemoteCandidates();

remoteCandidates.forEach((candidate, index) => {
  console.log(`Candidate ${index}: ${candidate.candidate}`);
});

规范

规范
WebRTC:浏览器中的实时通信
# dom-rtcicetransport-getremotecandidates

浏览器兼容性