Ошибка при запуске видео Agora на производственном сервере, работает локально

Я пытаюсь создать видеочат, используя Angular 6 и Agora Web v2.50 SDK. Я следовал руководству по этой ссылке, https://medium.com/@Anderson7301/building-a-video-chat-app-with-agora-and-angular-6-858d72b6fa0d Мне удалось успешно реализовать это на моем локальном машина, но когда я пытаюсь запустить его на сервере, я получаю "main.c71419ff14e542f66f51.js:1 ОШИБКА TypeError: o.default.debug не является функцией". Можете ли вы помочь мне с. Сервер работает по SSL.

Обновление - 20.11.2008

Я понял, что мне нужно использовать динамический ключ для работы видеочата на сервере. Поэтому я использовал Java-код Dynamickey Generation и создал токен, и при попытке присоединиться к пользователю я получаю "Agora-SDK [ОШИБКА]: сбой присоединения пользователя [ERR_NO_AUTHORIZED]". Вот журнал из моего углового приложения.

11: 24: 34: 202 Agora-SDK [ИНФО]: Создание клиента, РЕЖИМ: взаимодействие Кодек: vp8 AgoraRTCSDK.min.js: 2

11: 24: 34: 215 Agora-SDK [INFO]: Инициализация клиента AgoraRTC, appId: 1d82f0b2b87d445d81dfb2caf4f5e5b9. AgoraRTCSDK.min.js: 2

11: 24: 34: 264 Agora-SDK [INFO]: Инициализация клиента AgoraRTC, appId: 1d82f0b2b87d445d81dfb2caf4f5e5b9.

active.component.ts:649 Клиент AgoraRTC инициализирован AgoraRTCSDK.min.js: 2

11: 24: 34: 272 Agora-SDK [DEBUG]: подключение к выбору_сервера: https://ap-web-1.agora.io/api/v1 AgoraRTCSDK.min.js: 2

11: 24: 34: 282 Agora-SDK [DEBUG]: подключение к выбору_сервера: https://ap-web-2.agoraio.cn/api/v1 AgoraRTCSDK.min.js: 2

11: 24: 34: 951 Agora-SDK [DEBUG]: получить адрес шлюза: (3) ["webrtc-159-117-159-4.agora.io:5875", "webrtc-128-1-33-131.agora.io: 5866 "," webrtc-159-117-159-3.agora.io:5870 "] AgoraRTCSDK.min.js: 2

11: 24: 34: 957 Агора-SDK [ИНФО]: Присоединение к каналу: 1000 AgoraRTCSDK.min.js:2 11:24:34:964 Агора-SDK [DEBUG]: зарегистрировать клиентский канал 1000 Uid 1587154302 AgoraRTCSDK.min.js: 2

11: 24: 34: 973 Agora-SDK [DEBUG]: начало соединения: webrtc-159-117-159-4.agora.io: 5875 AgoraRTCSDK.min.js: 2

11: 24: 35: 131 Agora-SDK [DEBUG]: веб-сайт открыт: webrtc-159-117-159-4.agora.io:5875 AgoraRTCSDK.min.js: 2

11: 24: 35: 235 Agora-SDK [DEBUG]: подключен к серверу шлюза AgoraRTCSDK.min.js: 2

11: 24: 39: 336 Agora-SDK [ОШИБКА]: не удалось присоединиться к пользователю [ERR_NO_AUTHORIZED]

Создан динамический токен: 005AQAoAEY5MDBDNERFRkMxNzdDMkJGRjc5QUY5NDY2QTVEMDYzRTY4QTJCMDEQAB2C8LK4fURdgd+yyvT15bmaofNbWm6O7wAAAAAAA =

AppId для моего проекта: 1d82f0b2b87d445d81dfb2caf4f5e5b9

заранее спасибо за помощь

4 ответа

Проблема, с которой вы столкнулись, связана с аутентификацией пользователя. Работает ли проект, если отключить токен?

Когда вы отправляете запрос на токен-сервер для генерации токена доступа, вы передаете UserId? Используете ли вы тот же UserId при попытке присоединиться к каналу, или вы используете автоматическую генерацию?

Причина, по которой я спрашиваю, заключается в том, что в моем недавнем тестировании с сервером токенов Agora.io я заметил, что вы можете генерировать токен с или без UserId,

Если вы укажете UserId в генерации токенов, вы должны использовать это повторно UserId, Если вы передаете UserId как часть запроса, но затем попробуйте присоединиться к каналу с токеном и передать null как UserId в соединении это не получится.

Если вы не укажете UserId в генерации токена (токен должен генерироваться), тогда вы можете использовать pass null как UserId при присоединении к каналу и должно работать.

У меня такая же проблема сTypeError: o.default.debug при работе в сборке Angular. Похоже, что библиотека Agora не очень хорошо работает с JS minifier, который используется Angular CLI в производственных сборках. Единственный обходной путь, который я нашел, - это установить

"optimization": false

в angular.json, но это наверняка очень плохой обходной путь.

Что ж, в моем случае я реализовал сервер токенов на php с помощью laravel, взял ответ от H Virginia Singh.

      $uid = (int) mt_rand(1000000000,9999999999);

И идеально. Это определенно сработало для меня.

Сгенерируйте 10-значный случайный идентификатор пользователя и передайте его в индексный код и используйте тот же идентификатор пользователя для генерации токена. Вы обязательно присоединитесь к каналу

Другие вопросы по тегам