RTCPeerConnection: close() 方法
RTCPeerConnection 接口的 close() 方法用于关闭当前的对等连接。
调用此方法会终止 RTCPeerConnection 的 ICE 代理,结束所有正在进行的 ICE 处理和所有活动的流。这还会释放 ICE 代理使用的任何资源,包括 TURN 权限。一旦此方法返回,所有 RTCRtpSender 对象都将被视为已停止(它们可能仍在停止过程中,但就所有意图和目的而言,它们已停止)。
此方法返回后,通过 RTCPeerConnection.signalingState 返回的信令状态将为 closed。
请确保在尝试创建连接到同一远程对等方的新 RTCPeerConnection 之前,delete 所有对先前 RTCPeerConnection 的引用,因为这样做可能会根据浏览器而导致某些错误。
语法
js
close()
参数
无。
返回值
无 (undefined)。
示例
js
const pc = new RTCPeerConnection();
const dc = pc.createDataChannel("my channel");
dc.onmessage = (event) => {
console.log(`received: ${event.data}`);
pc.close(); // We decided to close after the first received message
};
dc.onopen = () => {
console.log("datachannel open");
};
dc.onclose = () => {
console.log("datachannel close");
};
规范
| 规范 |
|---|
| WebRTC:浏览器中的实时通信 # dom-rtcpeerconnection-close |
浏览器兼容性
加载中…