RTCPeerConnection.setRemoteDescription()
Experimental: 这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。
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
})
})
});
Specifications
Specification |
---|
WebRTC 1.0: Real-Time Communication Between Browsers # dom-peerconnection-setremotedescription |
Browser compatibility
BCD tables only load in the browser