Что такое файл crossdomain.xml? - PullRequest
       21

Что такое файл crossdomain.xml?

17 голосов
/ 13 ноября 2010

На самом деле, я бы хотел знать, с чего начать ...

Я встроил сторонний элемент управления галереей изображений SWF в свой личный веб-сайт.

SWF работает на XML,Я загружаю файл XML на лету следующим образом ....

  var flashvars = { xmlPath: "http://www.example.com/xml.aspx" };
                var params = { allowFullScreen: "true", wmode: "transparent", allowScriptAccess: "always"};
                var attributes = {};
                swfobject.embedSWF("main.swf", "gallery", "100%", "100%", "9.0.0", "expressInstall.swf", flashvars, params, attributes);

Проблема в том, что страница не работает должным образом.На самом деле это работало только в Firefox, а не в Chrome или IE

После проверки запросов с помощью fiddler я обнаружил, что файл crossdomain.xml не найден.Итак, stackoverflow помог мне найти образец ...

<?xml version="1.0" ?>
<cross-domain-policy>
  <site-control permitted-cross-domain-policies="master-only"/>
  <allow-access-from domain="*"/>
  <allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>

После добавления файла crossdomain.xml веб-страница теперь работает в Firefox и IE. В Chrome у меня все еще есть проблема.

Так что здесьпара вопросов ...

1) Что такое crossdomain.xml?

2) Как мне заставить мою веб-страницу работать и в Chrome?

Ответы [ 2 ]

23 голосов
/ 13 ноября 2010

«Файл междоменной политики - это документ XML, который предоставляет веб-клиенту (например, Adobe Flash Player, Adobe Reader и т. Д.) Право обрабатывать данные в нескольких доменах». Взято с сайта Adobe http://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html.

РЕДАКТИРОВАТЬ: Ответ на вопрос 2: Flex crossdomain.xml не работает правильно в Chrome / Firefox? . Установите Adobe Flash Player для разработчиков, Fiddler (или аналогичный), эти инструменты должны сделать вашу жизнь проще. Также читайте http://kb2.adobe.com/cps/839/cpsid_83950.html.

8 голосов
/ 14 ноября 2010

И для всех новичков, таких как я, SWF работает и в Chrome!

Разница заключалась в том, что http://www.example.com и http://example.com являются ДВУМЯ РАЗНЫМИ "сущностями".

Я загружал файл в var flashvars = { xmlPath: "http://www.example.com/xml.aspx" }; и провел тесты с Chrome на «другом домене» http://example.com

...