AS3: нарушение безопасности песочницы - PullRequest
2 голосов
/ 04 января 2010

Я хочу начать жить со своим сайтом.

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

FWIW, это только происходит при экспорте сборки выпуска ... Я могу загрузить данные php без проблем на этапе отладки / разработки локально в Flex.

Что дает? Когда я делаю запрос данных на основе PHP, я всегда получаю эту ошибку:

Ошибка № 2044: необработанная ошибка errorE. текст = Ошибка № 2048: песочница безопасности нарушение: http://alubow.com/jml_testing/viewable/alubow_project.swf не может загрузить данные из http://www.alubow.com/jml_testing/foldergrab.php?ipath=assets/bitmap/portrait_thumbs/&tpath=assets/bitmap/portrait_imgs/. в utils.php :: DirectoryReader () в alubow_project / newScroller () в alubow_project / mainClickOut ()

Есть ли код, который мне нужно добавить, чтобы заставить это работать? Нужно ли настраивать сервер, который я использую? Мне скоро понадобится запустить этот сайт, и эти ошибки, которые я получаю как локально, так и на стороне сервера (через браузер), неприемлемы.

МОЖЕТ БЫТЬ ЭТА ПРОБЛЕМА С ФЛЕШ-ИГРОКОМ, КОТОРОЕ Я УСТАНОВИЛ? У меня отладочная версия флеш плеера 10.

JML

Ответы [ 3 ]

3 голосов
/ 05 января 2010

Проблема с префиксом www. Я предполагаю, что вы пытаетесь загрузить страницу без субдомена www, а URL, который вы ищете, имеет этот префикс.

Теперь, что вам нужно сделать, это одно из следующих действий:

  • изменить URL запроса
  • добавьте оба www.yourdomain.com и yourdomain.com в файл crossdomain.xml
  • назовите URL-адрес dymanicaly. это лучшее решение, но нужно еще немного поработать. Вы можете сделать это, используя ExternalInterface и соединение с JS здесь . ИЛИ вы можете использовать BrowserManager .

Наслаждайтесь!

1 голос
/ 05 января 2010

Это может быть связано с тем, что ваше приложение запрашивает www.alubow.com, если оно размещено на alubow.com, что вызывает запрос на http://www.alubow.com/crossdomain.xml,, которого не существует. Вы можете сослаться на свое приложение как www.alubow.com/jml_testing/viewable/alubow_project.swf и избежать ошибки.

Кроме того, вы можете добавить файл crossdomain.xml на www.alubow.com.

1 голос
/ 04 января 2010

Я знаю, что это странно, но для локальных файлов, загружаемых через флэш-плеер, вам, вероятно, просто нужно нажать на этой странице . Посмотрите в правом верхнем углу что-то похожее на пример изображения. На самом деле это приложение Flex. Нажимайте последовательные вкладки, пока не прочитаете панель «Глобальные параметры безопасности» (в настоящее время третья слева, с изображением глобуса и замка). Выберите меню «Изменить местоположения» и выберите «Добавить местоположение». Затем вы можете добавить свой SWF-файл или папку с SWF-файлами в белый список, и они смогут волшебным образом получать доступ к внешним ресурсам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...