Как транслировать медиафайл с сервера на клиентскую сторону, например аудиофайл mp3 в моем случае в loopback 4 nodejs? - PullRequest
1 голос
/ 11 июля 2020

У меня есть loopback 4 - nodejs в бэкэнде и Ioni c 4 во фронтенде моего мобильного приложения. Я храню mp3-файл на сервере sid, и я хочу транслировать и воспроизводить его на стороне клиента, поэтому в основном потоковое аудио из loopback4. Итак, в основном я ищу серверный код в loopback-4, который находится в машинописном тексте для аудиопотока файла клиенту. (Я не могу использовать библиотеки npmjs, поскольку большинство из них не типизированы и не могут использоваться в машинописном тексте)

Ответы [ 2 ]

0 голосов
/ 20 июля 2020

Краткий ответ: Я смог добиться этого, просто обслуживая файлы c stati, т.е. мой аудиофайл со стороны сервера. Доступ к нему с помощью созданной мной конечной точки и ее вызов с использованием тега во внешнем интерфейсе.

Длинный ответ:

  1. В loopback 4 вы можете найдите в файле application.ts строку кода, где обслуживается каталог publi c из папки root серверного проекта.

    this.stati c ('/ ', path.join (__ dirname,' ../../public'));

Точно так же вы можете обслуживать свои файлы stati c из любого каталога хотеть. В моем случае я отправил свои файлы из папки мультимедиа, которую я добавил в каталог root моего проекта узла.

this.static('/', path.join(__dirname, '../media'));
Второй шаг - предоставить конечную точку API, которую вы будете использовать для отправки запроса на получение серверу. Это можно сделать в файле index.ts серверного проекта и в коде прямо под app.start ().

app.stati c ('/ media', 'media', { extension: ['mp3']});

Здесь добавление конечной точки API и каталога в папку root проекта узла является обязательным.

Теперь во внешнем интерфейсе вам нужно только добавить свой полный URL-адрес для доступа к файлу stati c из проекта узла в атрибут sr c тега html. Добавьте к тегу атрибут controls , и html сделает все за вас. Вы можете воспроизводить, приостанавливать, пропускать и т. Д. c.

0 голосов
/ 16 июля 2020

Как только я узнаю о loopback4, у него нет реализации потока nodejs. Рекомендую использовать нативные потоки NodeJS. Проверьте это репо https://github.com/noamtcohen/AudioStreamer

...