RTCDataChannel: negotiated 属性

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2020 年 1 月⁩ 起,所有主流浏览器均已支持。

只读的 RTCDataChannel 属性 negotiated 指示 RTCDataChannel 的连接是由 Web 应用程序(true)协商的,还是由 WebRTC 层(false)协商的。默认值为 false

有关此属性的更多信息,请参阅 创建数据通道

如果 RTCDataChannel 的连接是由 Web 应用程序本身协商的,则为 true;如果协商由 WebRTC 层处理,则为 false。默认值为 false

示例

下面的代码片段检查 negotiated 的值;如果为 true,则调用一个名为 shutdownRemoteChannel() 的函数,并将该通道的 id 作为参数传递;这可能被实现为在终止连接之前向远程对等方发送关闭信号。

js
if (dataChannel.negotiated) {
  shutdownRemoteChannel(dataChannel.id);
}

规范

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

浏览器兼容性

另见