RTCPeerConnection.setRemoteDescription()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
RTCPeerConnection.setRemoteDescription()
方法改变与连接相关的描述,该描述主要是描述有些关于连接的属性,例如对端使用的解码器。连接受此更改影响,并且必须能够支持旧的和新的描述。方法带三个参数,RTCSessionDescription
对象用于设置,然后是更改成功的回调方法,一个是更改失败的回调方法。
方法是异步的,不用等待设置完成,成功会调用成功回调方法,失败则会调用错误回调方法。
连接的 offer 通常来自于负责匹配的服务器所发送的数据。执行者应调用此方法设置远程描述,然后生成发送到对端计算机的 answer。
语法
aPromise = pc.setRemoteDescription(sessionDescription); pc.setRemoteDescription(sessionDescription, successCallback, errorCallback);
这个方法没有返回值。
参数
- sessionDescription
-
Is a
DOMString
is the description of the parameters to be applied to the remote session. - successCallback
-
Is a
Function
without parameter which will be called when the description has been successfully set. At this point, one can send the offer to a remote server that can forward it to a remote client - errorCallback
-
Is a
RTCPeerConnectionErrorCallback
which will be called if the description can't be set. It takes the following parameter:- errorInformation which is a
DOMString
describing the reason why the description has not been set.
- errorInformation which is a
Example
var pc = new PeerConnection();
pc.setRemoteDescription(new RTCSessionDescription(offer), function () {
pc.createAnswer(function (answer) {
pc.setLocalDescription(answer, function () {
// send the answer to the remote connection
});
});
});
规范
Specification |
---|
WebRTC: Real-Time Communication in Browsers # dom-peerconnection-setremotedescription |
浏览器兼容性
BCD tables only load in the browser