Проблема с crossdomain.xml - PullRequest
       29

Проблема с crossdomain.xml

1 голос
/ 11 августа 2010

У меня возникли некоторые трудности с выполнением моей междоменной политики. У меня есть SWF на http://www.server.com/, который загружает в XML и другие файлы. Я хочу иметь возможность вставлять этот SWF-файл в другие HTML-страницы (в стиле YouTube), которые не находятся в одном домене. Он работает нормально, когда доступ через локальный сервер http://www.server.com/my.swf или http://www.server.com/swf.html, но когда я пытаюсь встраивать его, он не загружает XML и / или дает мне Security sandbox violation

Опубликованный SWF установлен на Security.REMOTE

crossdomain.xml разрешает все:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
 <allow-access-from domain="*" to-ports="*"/>
</cross-domain-policy>

Надеюсь, что вы можете помочь

ОБНОВЛЕНИЕ 1

Пример кода для вставки:

<!-- Embedding -->
<object width='400' height='300'>
<param name='movie' value='http://www.server.com/my.swf'></param>
<param name='allowFullScreen' value='true'></param>
<param name='allowscriptaccess' value='always'></param>
<param name='FlashVars' value="stream=1281002679" ></param>
<embed src='http://www.server.com/my.swf' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width='400' height='300'></embed>
</object>

... которые могут быть добавлены к любой веб-странице в любом домене

ОБНОВЛЕНИЕ 2

policyfiles.txt (192.168.100.55 - мой локальный тестовый сервер, содержащий встроенный пример):

OK: Root-level SWF loaded: http://www.server.com/my.swf
OK: Searching for <allow-access-from> in policy files to authorize data loading from resource at http://192.168.100.55/data/configuration.xml?refresh=0.2777715688571334 by requestor from http://www.server.com/my.swf
Warning: Failed to load policy file from http://192.168.100.55/crossdomain.xml
Error: Request for resource at http://192.168.100.55/data/configuration.xml?refresh=0.2777715688571334 by requestor from http://www.server.com/my.swf is denied due to lack of policy file permissions.

flashlog.txt extract Warning: Failed to load policy file from http://192.168.100.55/crossdomain.xml

Нужно ли загружать crossdomain.xml через Security.loadPolicyFile('http://www.server.com/crossdmoain.xml') ??

1 Ответ

1 голос
/ 11 августа 2010

ошибка: запрос ресурса на http://192.168.100.55/data/configuration.xml?refresh=0.2777715688571334 запрашивающей стороны из http://www.server.com/my.swf отклонен из-за отсутствия разрешений для файла политики.

Похоже, ваш swf пытается загрузить файл конфигурации с локального сервера вместо вашего www.server.com

Вы должны использовать абсолютный путь

...