RTCPeerConnection: peerIdentity 属性

peerIdentityRTCPeerConnection 接口的只读属性,返回一个 JavaScript Promise,该 Promise 解析为一个 RTCIdentityAssertion,其中包含一个标识远程对等方的字符串。一旦此 Promise 成功解析,生成的身份就是**目标对等方身份**,并且在连接持续期间不能更改。

一个 JavaScript Promise,它解析为一个 RTCIdentityAssertion,描述了远程对等方的身份。

如果在尝试验证传入身份断言(即描述对等方身份的信息)时发生错误,则 Promise 将被拒绝。如果没有已有的目标对等方身份,则 peerIdentity 将被设置为一个新创建的 Promise,并且该过程将重新开始,直到该过程成功或没有进一步的身份验证尝试发生。

注意:setRemoteDescription() 返回的 Promise 必须等到设置的任何目标对等方身份都被验证后才能解析。如果身份尚未验证,则 setRemoteDescription() 返回的 Promise 将被拒绝。如果没有目标对等方身份,则 setRemoteDescription() 无需等待验证发生即可解析。

示例

在这个例子中,创建一个名为 getIdentityAssertion() 的函数,该函数异步等待对等方的身份被验证,然后将身份返回给调用者。如果发生错误并且 Promise 被拒绝,则这会将错误记录到控制台中,并返回 null 给调用者。

js
let pc = new RTCPeerConnection();

// …

async function getIdentityAssertion(pc) {
  try {
    const identity = await pc.peerIdentity;
    return identity;
  } catch (err) {
    console.log("Error identifying remote peer: ", err);
    return null;
  }
}

规范

规范
WebRTC 1.0 的身份
# dom-rtcpeerconnection-peeridentity

浏览器兼容性

BCD 表仅在浏览器中加载

另请参阅