Доступ к элементам iframe в разных доменах - PullRequest
2 голосов
/ 09 мая 2009

Я понимаю, что межсайтовый скриптинг (xss) не очень хорош и не поддерживается в большинстве браузеров. Тем не менее, я создаю страницу, которую будут использовать только 3 или 4 человека в моей компании. На этой странице у меня есть фрейм из другого домена, и мне нужна родительская страница, чтобы иметь возможность доступа к значениям в этом фрейме.

Итак, мой вопрос: есть ли способ (изменение настроек и т. Д.) В Firefox или IE7, чтобы это произошло? Предпочтительно (хотя и не обязательно) любое изменение настроек должно быть явно для моего домена.

Я нашел в Интернете некоторую справку, в которой говорится, что в FF вы можете добавить, чтобы разрешить это. Хотя мне не повезло, возможно, это не поддерживается в FF3.

Ответы [ 3 ]

1 голос
/ 23 ноября 2010

Для тех, кто ищет, есть отличный обратно-совместимый, только для JavaScript способ общения между доменами. Короткий и простой код. Идеальное решение? Пока у вас есть запрос на изменение родительского и дочернего элементов:

http://www.onlineaspect.com/2010/01/15/backwards-compatible-postmessage/

0 голосов
/ 09 мая 2009

Другой вариант - настроить прокси-страницу так, чтобы страницы появлялись в одном домене. Прокси-страницы могут быть ужасно уязвимы для XSS, в зависимости от реализации. Даже если вы заявляете, что это не является проблемой, важно учитывать.

0 голосов
/ 09 мая 2009

Пара идей макушки моей головы:

  • В IE вы можете изменить настройки зоны безопасности, в которой находится ваш сайт. Я предлагаю вам добавить домены в «Надежные сайты», а затем убедиться, что «Доступ к источникам данных через домены» включен. для зоны надежных сайтов. Вы можете найти более подробную информацию здесь.

  • Если у вас есть доменное имя, которое вы контролируете, может быть, вы можете настроить субдомены, которые указывают на сайты в разных фреймах? Тем самым обманывая веб-браузер, что они являются частью одного и того же сайта?

  • Если вам нравится кодирование, вы можете создать собственное приложение, которое использует элемент управления IE-браузера и реализует собственный IInternetSecurityManager (http://msdn.microsoft.com/en-us/library/ms537130(VS.85).aspx), который обеспечивает доступ к междоменному сценарию.

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