RTCPeerConnection: currentLocalDescription 属性

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2020 年 1 月⁩ 起,所有主流浏览器均已支持。

RTCPeerConnection 接口的只读属性 currentLocalDescription 返回一个 RTCSessionDescription 对象,该对象描述了连接的本地端在最近一次成功协商(自从 RTCPeerConnection 完成协商并连接到远程对端以来)时的状态。还包括自描述首次实例化(作为 offer 或 answer)以来 ICE 代理可能已生成的任何 ICE 候选列表。

要更改 currentLocalDescription,请调用 RTCPeerConnection.setLocalDescription(),这将触发一系列事件,最终设置此值。有关具体发生了什么以及更改不一定瞬时发生的原因的详细信息,请参阅 WebRTC 连接页面上的 挂起和当前描述

注意:RTCPeerConnection.localDescription 不同,此值代表连接本地端的实际当前状态;localDescription 可能指定连接当前正在切换到的描述。

连接本地端的当前描述,如果已设置。如果尚未成功设置,则此值为 null

示例

此示例检查 currentLocalDescription 并显示一个包含 RTCSessionDescription 对象 typesdp 字段的警报。

js
const pc = new RTCPeerConnection();
// …
const sd = pc.currentLocalDescription;
if (sd) {
  alert(`Local session: type='${sd.type}'; sdp description='${sd.sdp}'`);
} else {
  alert("No local session yet.");
}

规范

规范
WebRTC:浏览器中的实时通信
# dom-peerconnection-currentlocaldesc

浏览器兼容性

注意: currentLocalDescriptionpendingLocalDescription 在 WebRTC 规范中的添加相对较新。在不支持它们的浏览器中,请直接使用 localDescription

另见