Кросс-домен Javascript - Flash на домене 1 вызывает Javascript на домене 2 - PullRequest
0 голосов
/ 19 января 2011

Немного сложная проблема, чтобы объяснить, но здесь идет ...

1) SWF-файл на домене 1, читает XML-файл на домене 1 для отображения данных 2) также содержит ссылку, чтобы открыть всплывающее окно ShadowBox другого HTML-файла такжеразмещен на домене1 3) Этот файл swf также встроен в iFrame на домене2 4) домен2 также имеет установленный ShadowBox в HTML

Проблема в основном сводится к межсайтовому скриптингу:

Встроенный SWFна domain2 запускает domain2 ShadowBox, чтобы открыть это всплывающее окно, но вызов javascript во Flash происходит из domain1, что вызывает проблемы с междоменными разрешениями.

Кто-нибудь может придумать способ обойти это?JSONP кажется одним из вариантов, но мне не совсем удобно использовать это.Есть ли у JQuery какой-нибудь способ приблизиться к этому?Пока ничего не могу найти ...

1 Ответ

1 голос
/ 04 марта 2011

Я пытаюсь понять вашу проблему, поэтому я объясню вещи так, как вижу их - скажите мне, если я ошибаюсь. В домене 1 у вас есть SWF, который вызывает вызов внешнего интерфейса в javascript, который вызывает действие, выполняемое в скрипте, загруженном в iframe, в домене 2?

Если это так, вы можете обойти ту же проблему политики происхождения, сделав вызов из swf и вырезав externalInterface из уравнения. Flash позволит вам выполнить HTTP-вызов в другой домен, если это позволяет файл crossdomain.xml в целевом домене (в данном случае domain2) (см. Эту ветку: Может кто-нибудь опубликовать правильно сформированный пример crossdomain.xml )

Если я далеко от базы, дай мне знать.

...