鸟语天空
WebRTC 带内协商与带外协商
post by:追风剑情 2024-2-28 15:35

  建立数据通道的常用方法是在发起端调用createDataChannel()方法,在接收端监听datachannel事件,当通道建立完成后,两端都触发open事件,从而在两端都能获取数据通道的对象。

  这是WebRTC建立数据通道的默认方法,被称为带内协商。这种方法的优点是可以随时动态创建数据通道。

  WebRTC规范里还引入了另外一种建立数据通道的方法,名为带外协商。这种方法在 两端都调用 createDataChannel() 方法,任何一端都无须监听 datachannel 事件。

//带外协商模式
let dataChannel = pc.createDataChannel("MyApp Channel", {
	negotiated: true
});

dataChannel.addEventListener("open", (event) => {
	beginTransmission(dataChannel);
});
requestRemoteChannel(dataChannel.id);

评论:
发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容