Uncaught TypeError: Невозможно прочитать свойство addIceCandidate из неопределенного - PullRequest
0 голосов
/ 11 июня 2018

Хорошо, я перейду к части кода, так как заголовок - это проблема, с которой я сталкиваюсь, и я не смог найти лучшего способа описать его.

function addIceCandidate(message) {
    if (message.candidate != null) {
        console.trace('add ice candidate');
        var iceCandidate = new RTCIceCandidate(message.candidate);
        pc1.addIceCandidate(iceCandidate);
    }    
}

- это функция, которая пытается отправить кандидата на лед удаленному узлу.но в Chrome-отладчике удаленного узла он говорит

Uncaught TypeError: Невозможно прочитать свойство addIceCandidate из undefined, а

pc1.addIceCandidate(iceCandidate);

- строка, в которой происходит ошибка

Но, насколько мне известно, addIceCandidate - это функция WebRTC, которая уже определена.

, так что я делаю не так?

Я уже прошел здесь и для подобных проблем здесь , здесь , а также здесь

, а также для всего проекта Gist составляет здесь

Вы заранее помогите, пожалуйста, сообщите мне, если вам нужна дополнительная информация

Ответы [ 2 ]

0 голосов
/ 11 июня 2018

Запомните:

  1. Как только соединение, pc1, получит кандидата на льд через обработчик события onicecandidate(), pc1 должно отправить кандидата на льдед удаленному узлу.через сервер сигнализации.

  2. Удаленный узел должен использовать RTCPeerConnection 's addIceCandidate(), чтобы добавить кандидата на лед, полученный через сигнализациюсервер.

См. Простой пример одноранговой связи

0 голосов
/ 11 июня 2018

Uncaught TypeError: Невозможно прочитать свойство 'addIceCandidate' с неопределенным

Эта строка сама содержит ответ на ваш вопрос.pc1 Не определен объект, для которого вы пытаетесь получить доступ к свойству addIceCandidate.

Рабочий код:

var pc1 = {
  addIceCandidate : function(val) {
    console.log(val);
  }
}

function addIceCandidate(message) {
    if (message.candidate != null) {
        pc1.addIceCandidate(message.candidate);
    }    
}

var data = {
  "candidate": "Rohit"
}

addIceCandidate(data);
...