You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查找Agora RTCPeerConnection文档,获取Offer的SDP并分享

问题解答

1. Agora RTCPeerConnection 相关文档获取

  • 你可以在Agora官方开发者平台的Web SDK API参考中找到RTCPeerConnection的详细文档,涵盖初始化参数、核心方法、回调事件等内容。
  • Agora开发者中心的WebRTC自定义信令实操教程里也有基于RTCPeerConnection的场景化示例,能帮助你理解实际业务中的用法。

2. 打印并获取Offer的SDP值

RTCPeerConnection.createOffer() 是异步方法,返回的是Promise对象,你直接打印时它还处于未完成状态,所以看不到实际的SDP内容。需要等待Promise执行完成后,再访问RTCSessionDescription对象的sdp属性。

方法一:使用.then()链式处理

peerConnection = new RTCPeerConnection(servers);

peerConnection.createOffer()
  .then(offer => {
    return peerConnection.setLocalDescription(offer);
  })
  .then(() => {
    // 获取并打印SDP值
    console.log("Offer SDP: ", peerConnection.localDescription.sdp);
    // 此处可将sdp值传递给另一个Peer
  })
  .catch(error => {
    console.error("创建Offer失败: ", error);
  });

方法二:使用async/await(更简洁)

async function createAndShareOffer() {
  peerConnection = new RTCPeerConnection(servers);
  try {
    const offer = await peerConnection.createOffer();
    await peerConnection.setLocalDescription(offer);
    console.log("Offer SDP: ", offer.sdp);
    // 将offer.sdp发送给另一个Peer
  } catch (error) {
    console.error("创建Offer失败: ", error);
  }
}

// 调用函数
createAndShareOffer();

注:调用setLocalDescription后,peerConnection.localDescription也会包含相同的SDP内容,两种方式均可获取到需要分享的SDP值。

内容的提问来源于stack exchange,提问作者Joe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 21:15:01