Подтвердить что ты не робот

Метод POST, преобразованный в GET в IE-9

У меня есть эта строка кода в моем JSP. (Я использую struts 1.3)

< html: form action = "screening/mine.do" method = "post" > , , , </HTML: формa >

Когда действие, соответствующее my.do, вызывается (используя struts-config.xml), страница отправляется как GET вместо POST. Из-за этого все параметры запроса, включая необходимые, теряются. Эта проблема возникает только в IE-9.

Ответ остается как POST, когда я использую другие версии IE или любые другие браузеры. Как заставить ответ оставаться как POST в IE-9?

EDIT: Я заметил еще одну проблему. Всякий раз, когда страница отображается в новом окне, эта проблема возникает. В других местах POST отлично работает в IE-9.

Кроме того, эта проблема возникает в Win7/IE-8, но работает отлично в XP/IE-8. Есть ли что-то общее с ОС?

Любые решения были бы полезны.

Спасибо!!

4b9b3361

Ответ 1

Эта проблема произошла из-за настройки безопасности в IE в Windows 7. Это также происходит в IE-8 Win-7. (Но отлично работает в IE-8 Win-XP)

В IE Windows-7 есть опция Включение/отключение защищенного режима. Это новая функция, присутствующая в IE Vista/Windows-7, и эта опция включена по умолчанию для зоны "Интернет" и зоны "Местная интрасеть" (или любой из них). Отключение в этих 2 местах решило проблему.

Инструменты → Свойства обозревателя → Безопасность → Интернет/местная интрасеть → Снимите флажок "Включить защищенный режим".

Ответ 2

TL; DR: Убедитесь, что оба сайта находятся в одной и той же зоне. У меня были сайты в двух разных зонах, и вызывающий стек зоны сломал IE.

Для всех, кто сталкивается с этим (как и я), но обнаруживает, что параметр Защищенный режим не разрешает его, я написал это в другом потоке: fooobar.com/questions/432973/...

Решил это для меня.

Ответ 3

Попробуйте следующее: method="POST".

В стандарте указано, что метод может иметь значение GET | POST (обратите внимание на колпачки).

Ответ 4

Мы заметили, что есть некоторые предупреждения о безопасности, которые останавливают обработку, чтобы пользователь мог ее подтвердить. После того, как использование подтвердит предупреждение, браузер отправляет сообщение, а не сообщение. Это происходило в IE8, но не уверен, что это все еще происходит в IE9.