我正在尝试在两个对等点之间建立 p2p 音频/视频连接。以下:WebRTC 入门。
它在我家的 2 台 PC 之间的 LAN 环境中工作正常,但在我公司的 LAN 环境中运行时抛出错误消息,有部分 javascript
function processSignalingMessage(message) {
var msg = JSON.parse(message);
if (msg.type === 'offer') {
// Callee creates PeerConnection
if (!initiator && !started)
maybeStart();
// We only know JSEP version after createPeerConnection().
if (isRTCPeerConnection)
pc.setRemoteDescription(new RTCSessionDescription(msg));
else
pc.setRemoteDescription(pc.SDP_OFFER,
new SessionDescription(msg.sdp));
doAnswer();
} else if (msg.type === 'answer' && started) {
pc.setRemoteDescription(new RTCSessionDescription(msg));
} else if (msg.type === 'candidate' && started) {
var candidate = new RTCIceCandidate({
sdpMLineIndex : msg.label,
candidate : msg.candidate
});
pc.addIceCandidate(candidate);
} else if (msg.type === 'bye' && started) {
onRemoteHangup();
}
}
Run Code Online (Sandbox Code Playgroud)
当第一个用户收到消息“type”:“candidate”时,出错
以及控制台日志的一部分:
小智 0
我认为您可以仅使用 msg.candidate 创建 ICE 候选消息,
var candidate = new RTCIceCandidate(msg.candidate);
Run Code Online (Sandbox Code Playgroud)
并将其传递到addIceCandidate函数中