Загрузка видео из локальной файловой системы - PullRequest
0 голосов
/ 14 октября 2008

У меня есть SWF, который запускается из C: / в браузере, а не на сервере (длинная история), и этот SWF загружает видео, расположенное по адресу ../../videos/video относительно этого SWF.

Проблема в том, что когда я запускаю его во Flex, все круто. Работая локально, он не может найти файл (не ошибка безопасности) и выдает ошибку connectionError.

Есть идеи?

ПРИМЕЧАНИЕ. Это, похоже, проблема, характерная для Windows, она работает на моем Mac с теми же настройками безопасности, что и у нее.

Ответы [ 2 ]

2 голосов
/ 14 октября 2008

У Flex Builder есть файл, в который он добавляет все ваши каталоги bin, чтобы позволить отладчику обойти локальные ограничения безопасности.

Вот блог на эту тему .

По сути, Flexbuilder сообщает Flash, что он должен доверять папке bin ... если вы выполняете поиск на своем компьютере для разработки файла flexbuilder_plugin.cfg, вы должны найти его в папке с именем FlashPlayerTrust примерно в той же области, которую обычно находите Файлы SharedObject. Если вы откроете этот файл в текстовом редакторе, вы увидите практически все пути к каждой папке bin для каждого проекта flex, над которым вы когда-либо работали. И вдруг все становится намного яснее.

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

Итак, я создал новый файл и поместил его рядом с этим файлом flexbuilder_plugin.cfg и назвал его MyProggy.cfg. Flash настроен на чтение всех файлов в этой папке и анализирует все пути к ней, и любые приложения, запускаемые с этих путей, будут считаться «localTrusted» и будут работать так же, как при запуске из Flexbuilder. Внутри этого текстового файла я поместил одну строку: «c: \ program files \ my proggy» и сохранил ее. Затем мне пришлось перезапустить Firefox, чтобы изменения вступили в силу. Я также добавил текстовую метку в свое приложение и привязал текстовое свойство к {Security.sandboxType}.

1 голос
/ 15 октября 2008

Я бы предложил получить HTTPFOX для Firefox, который является сниффером. Тогда вы можете увидеть, что терпит неудачу. В своем собственном поиске я обнаружил, что FLV всегда относятся к SWF, даже когда загружены на WEB. Каждый загруженный ресурс относится к файлу index.html, за исключением FLV, которые всегда остаются относительно SWF. Возможность наблюдать за потоком данных или пытаться перенаправить их на ваш сайт неоценима.

Это также объясняет, почему у некоторых людей не возникает проблем с загрузкой файлов локально, но они сталкиваются с проблемами в Интернете. Если их HTML-файл, который загружает SWF, находится в другом месте, чем SWF, то каждый ресурс, кроме FLV, имеет другой относительный путь при просмотре в Интернете, чем при локальном просмотре.

...