RTCIceCandidate
Baseline 广泛可用 *
RTCIceCandidate 接口 — WebRTC API 的一部分 — 代表一个交互式连接建立 (Interactive Connectivity Establishment, ICE) 配置候选,可用于建立一个 RTCPeerConnection。
ICE 候选描述了 WebRTC 与远程设备通信所需的协议和路由。在启动 WebRTC 对等连接时,通常双方会提出若干个候选,直到双方就一个描述了他们认为最佳的连接的候选达成一致。然后 WebRTC 使用该候选的详细信息来发起连接。
有关 ICE 过程的详细信息,请参阅 WebRTC 会话的生命周期。文章 WebRTC 连接 提供了更多有用的详细信息。
构造函数
RTCIceCandidate()-
创建一个
RTCIceCandidate对象来表示单个 ICE 候选,并可选择根据配置对象进行配置。注意: 为了向后兼容,构造函数还接受一个包含
candidate属性值的字符串作为输入,而不是配置对象。
实例属性
address只读-
包含候选 IP 地址的字符串。
candidate只读-
一个字符串,表示可用于连接检查的候选的传输地址。此地址的格式是 RFC 5245 中定义的
candidate-attribute。如果RTCIceCandidate是“候选结束”指示符,则此字符串为空 ("")。 component只读-
一个字符串,指示候选是 RTP 候选还是 RTCP 候选;其值是
rtp或rtcp,并从candidatea-line 字符串中的"component-id"字段派生。 foundation只读-
返回一个字符串,包含一个唯一标识符,该标识符对于相同类型的任何候选都是相同的,共享相同的基(ICE 代理发送候选的地址),并且来自相同的 STUN 服务器。这用于帮助优化 ICE 性能,同时优先处理和关联出现在多个
RTCIceTransport对象上的候选。 port只读-
指示候选端口号的整数值。
priority只读-
指示候选优先级的长整型值。
protocol只读-
指示候选协议是
"tcp"还是"udp"的字符串。 -
如果候选源自另一个候选,则
relatedAddress是包含该主机候选 IP 地址的字符串。对于主机候选,此值为null。 -
对于源自另一个候选(例如中继候选或反射候选)的候选,
relatedPort是指示该候选源自的候选的端口号的数字。对于主机候选,relatedPort属性为null。 sdpMid只读-
一个字符串,指定候选的媒体流标识符标签,该标签唯一标识与该候选关联的组件内的媒体流,如果不存在此类关联,则为
null。 sdpMLineIndex只读-
如果不为
null,sdpMLineIndex表示媒体描述(如 RFC 4566 中定义)在 SDP 中的零基索引编号,该编号与候选相关联。 tcpType只读-
如果
protocol是"tcp",则tcpType表示 TCP 候选的类型。否则,tcpType为null。 type只读-
指示候选类型的字符串,其值是
RTCIceCandidate.type中列出的字符串之一。 usernameFragment只读-
包含一个随机生成的用户名片段 ("ice-ufrag") 的字符串,ICE 使用该用户名片段与随机生成的密码 ("ice-pwd") 一起实现消息完整性。您可以使用此字符串来验证 ICE 生成的代数;同一 ICE 过程的每一代都会使用相同的
usernameFragment,即使在 ICE 重启时也是如此。
实例方法
toJSON()-
返回
RTCIceCandidate当前配置的 JSON 表示形式。表示形式与candidateInfo对象相同,该对象可选择性地传递给RTCIceCandidate()构造函数来配置候选。
示例
有关示例,请参阅文章 信令与视频通话,其中演示了整个过程。
规范
| 规范 |
|---|
| WebRTC:浏览器中的实时通信 # rtcicecandidate-interface |
浏览器兼容性
加载中…