【发布时间】:2017-11-06 06:50:47
【问题描述】:
我在我的 webrtc 1-1 视频通话应用程序中使用了 adapter.js。它在谷歌浏览器上运行良好,双方都可以看到对方的视频并且可以听到音频。但是,当我在 FireFox 上运行相同的应用程序时,我在控制台上收到来自 adapter.js 的以下错误。
NS_ERROR_UNEXPECTED
这是来自 adapter.js 的函数,它在 return 语句中给出上述错误:
var RTCPeerConnection = function(pcConfig, pcConstraints) {
// .urls is not supported in FF yet.
maybeFixConfiguration(pcConfig);
return new mozRTCPeerConnection(pcConfig, pcConstraints);
};
这是 pcConfig 里面的内容:
{"iceServers":[{"url":"stun:stun.l.google.com:19302"}]}
这是 pcConstraints 内部的内容:
{"optional":[{"DtlsSrtpKeyAgreement":true},{"RtpDataChannels":true}],"mandatory":{}}
这是函数maybeFixConfiguration(pcConfig) 的样子:
function maybeFixConfiguration(pcConfig) {
if (pcConfig == null) {
return;
}
for (var i = 0; i < pcConfig.iceServers.length; i++) {
if (pcConfig.iceServers[i].hasOwnProperty('urls')){
pcConfig.iceServers[i]['url'] = pcConfig.iceServers[i]['urls'];
delete pcConfig.iceServers[i]['urls'];
}
}
}
我不明白我在这里犯了什么错误。 pcConfig 和 pcConstraints 结构有问题。我使用的是今天下载的最新版 FireFox。
【问题讨论】:
-
嗨,我很想知道你是如何得到这个错误的。我在 Firefox 38.0.1 上。而且我无法使用您提到的输入来重现它。您是否介意发布一个工作代码-sn-p 以及您使用的版本,或者更好的是 file a bug 与该信息?谢谢!