CORS с использованием сокетов для хранилища BLOB-объектов Azure

Я работал над этим, но это интересная проблема.

Поэтому, используя Unity и Unity Web Player (я знаю WebGL-бла-бла, но он еще не выпечен и не поддерживает все, что нам нужно), мы транслируем видео прямо из хранилища BLOB-объектов Azure.

Теперь встроенный класс WWW не является стартовым, поскольку он не транслируется, и некоторые из этих видео довольно большие. Поэтому мы использовали плагин и класс MovieStreamer для потоковой передачи видео. Плагин использует сокеты напрямую, но через моно версию Unity. Сокеты требуют, чтобы междоменная политика была доступна на флэш-порту для CORS (873, используя протокол не-http).

Я думал, что установка политики CORS на сервере хранения позволит это сделать. Поскольку HTTP-политику CORS можно установить, поместив файл crossdomain.xml в $root и сделав его общедоступным, политика CORS через API представляется избыточной. Тем не менее, это просто не работает. Даже со всеми "*" я вижу ту же ошибку для отсутствующей междоменной политики даже с файлом http междомена и настройками через API.

Я взломал вещи, чтобы использовать другой потоковый плагин HTTP, и, как магия, которая работает, так как он на самом деле использует crossdomain.xml. Таким образом, без изменения настроек в сокете AZURE CORS не годится, но BestHTTP работает нормально, как и WWW.

Итак, вопросы: какую поддержку имеет хранилище Azure для CORS. Должен ли API политики включать флэш-маршрут? Каков приоритет между двумя потоками?

Имейте в виду, что мы не используем флэш-память, просто трассировка сокетов поддерживается протоколом флэш-памяти.

1 ответ

Этот пример кода может быть полезным.

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