2010-02-25 3 views
3

Можно ли загружать контент в IFRAME, который впоследствии возвращает перенаправление 302, без перенаправления всего окна браузера на пункт назначения? То есть ограничить перенаправление на сам IFRAME? Если да, то как?Как перенаправить перенаправление SAML 302 на IFRAME?

EDIT1: Чтобы пересчитать ... у меня есть IFRAME, источником которого является форма для самостоятельной публикации. Действие возвращает 302 в другое место. Когда это произойдет, вся страница перенаправляется. То, что я хочу, - это ТОЛЬКО перенаправление IFRAME, оставив соседнюю страницу в покое.

EDIT2: Чтобы уточнить, это реализация SOM SSO. Содержимое IFRAME должно содержать недавно подписанное приложение. SSO работает правильно, но вся страница браузера перенаправляется в приложение, теряя содержащую страницу. Аспект SAML не может изменить диагноз, что приложение «перебор кадров», но может вызвать некоторые другие идеи.

+3

Да? То, что вы хотите, - это стандартное поведение. Или вы имеете в виду что-то еще? Можете ли вы уточнить? –

+0

@Pekka - Думаю, я был неясен. Перепробовал проблему. –

+0

, что абсолютно не должно произойти. Можете ли вы разместить онлайн-пример? –

ответ

11

Это невозможно не, чтобы ограничить перенаправление 302 на сам iframe. HTTP-перенаправление, происходящее внутри iframe, никогда не повлияет на содержащую страницу. То, о чем вы просите, уже является единственным поведением, которое вы увидите.

На целевой странице переадресации есть сценарий перебора кадров. Трудно предотвратить выход iframe, но there are tricks, чтобы справиться с этим.

+1

@Martin - то, что я вижу, - это перенаправление всей страницы, когда я хочу перенаправить только контент IFRAME. –

+0

Я продолжу копать и попытаюсь получить дополнительную информацию у владельца страницы перенаправления. Может быть, есть * что-то еще. Я напишу больше информации, если у меня получится. Благодарю. –

+0

Да, на загруженной странице присутствовал фрейм-бэстинг. Благодаря! –

1

Бьюсь об заклад, вы имеете дело с основанной на JavaScript «Frame buster» на конце целевой страницы перенаправления. Вам придется отключить это или выключить.

+0

@Pekka - это возможно. Я добавил информацию, объясняющую, что это SOML SSO. Я посмотрю, смогу ли узнать, включено ли целевое приложение SSO. –

+0

@ bull отключить JavaScript (например, с помощью панели инструментов веб-разработчиков в Firefox) и посмотреть, сохраняется ли поведение. Также возможно установить свойство 'target = '_ top'' в форме, которая выйдет из iframe без JavaScript. –

+0

+1 - да, на загруженной странице присутствовал фрейм-бэстинг. Принимая ответ @ Мартина, он был первым. –