--- title: RTCPeerConnection.setRemoteDescription() slug: Web/API/RTCPeerConnection/setRemoteDescription translation_of: Web/API/RTCPeerConnection/setRemoteDescription ---
{{APIRef("WebRTC")}}{{SeeCompatTable}}
RTCPeerConnection.setRemoteDescription()
方法改变与连接相关的描述,该描述主要是描述有些关于连接的属性,例如对端使用的解码器。 连接受此更改影响,并且必须能够支持旧的和新的描述。 方法带三个参数,{{domxref("RTCSessionDescription")}} 对象用于设置,然后是更改成功的回调方法,一个是更改失败的回调方法。
方法是异步的,不用等待设置完成,成功会调用成功回调方法,失败则会调用错误回调方法。
连接的offer通常来自于负责匹配的服务器所发送的数据。执行者应调用此方法设置远程描述,然后生成发送到对端计算机的answer。
aPromise = pc.setRemoteDescription(sessionDescription);
pc.setRemoteDescription(sessionDescription, successCallback, errorCallback);
这个方法没有返回值。
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 clientRTCPeerConnectionErrorCallback
which will be called if the description can't be set. It takes the following parameter:
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 | Status | Comment |
---|---|---|
{{ SpecName('WebRTC 1.0', '#widl-RTCPeerConnection-setRemoteDescription-void-RTCSessionDescription-description-VoidFunction-successCallback-RTCPeerConnectionErrorCallback-failureCallback', 'RTCPeerConnection.setRemoteDescription()') }} | {{ Spec2('WebRTC 1.0') }} | Initial specification. |
{{ CompatibilityTable() }}
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | {{ CompatVersionUnknown() }} [1] | {{ CompatVersionUnknown }} [1] | {{ CompatNo() }} | {{ CompatVersionUnknown() }} | {{ CompatUnknown() }} |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} | {{ CompatNo() }} | {{ CompatUnknown() }} | {{ CompatUnknown() }} |
[1] Though this property is not prefixed, the interface it belongs to is.