Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > почему IE10 думает, что это крос дом запрос


Автор: Samotnik 30.4.2013, 10:58
Привет. 
Есть страница по адресу http://foo.com, на которой есть <div> в котором <a href>
По нажатию на эту ссылку(<a>) открывается в новой вкладке страница с адресом http://foo.com/ru/bar/1
Когда я нажимаю на кнопки на этой странице, по не установленной причине IE 10 думает что происходят кросс-доменные запросы. Почему? 
Быть может ему не нравятся <a hreft target="_blank"/>

Автор: Samotnik 30.4.2013, 14:28
Вообще трэш.
По какой-то причине на странице http://foo.com/ru/bar/1   IE все сабмит формы шлет не POST а GET методом. Хотя на странице  http://foo.com все правильно - везде POST.
Что это такое smile , кто-нибудь встречался?  smile 

Автор: bars80080 30.4.2013, 17:00
сие так быть не должно
надо копать.

какие, к примеру, адреса в формах?
именно такие http://foo.com/ru/bar/1  или такие "/"?

есть ли тэг baseurl?

Автор: Samotnik 1.5.2013, 12:17
Цитата(bars80080 @  30.4.2013,  17:00 Найти цитируемый пост)
именно такие http://foo.com/ru/bar/1  или такие "/"?

"/"
Цитата(bars80080 @  30.4.2013,  17:00 Найти цитируемый пост)
есть ли тэг baseurl? 

Нет, только action у формы есть

Автор: Samotnik 1.5.2013, 14:06
Вообще, изначально проблема была в том, что в консоле начали падать ошибки:
Цитата

Источник http://foo.com не найден в заголовке Access-Control-Allow-Origin

Это я пофиксал на стороне сервера, но это привело к новым проблемам. Поэтому решил, что хот фикс не исправит ситуацию. Хочу разобраться, почему на одном домене IE думает, что запросы кросдоменные.

Автор: bars80080 1.5.2013, 20:45
Цитата(Samotnik @  1.5.2013,  14:06 Найти цитируемый пост)
Хочу разобраться, почему на одном домене IE думает, что запросы кросдоменные. 

ну, видимо, ему кажется, что этот "/" не равен foo.com

то есть, надо либо прописывать полный адрес (если серверный скрипт под рукой, то процесс можно вполне автоматизировать), либо копать дальше.
к примеру, попробовать задать тот же тэг baseurl с нужным значением

Добавлено через 39 секунд
или смотреть заголовки, что там в них ещё попадается

Автор: Samotnik 6.5.2013, 10:40
Цитата(bars80080 @  1.5.2013,  20:45 Найти цитируемый пост)
то есть, надо либо прописывать полный адрес

прописал.
Код

 <form id="submitBookForm" method="POST" action="http://foo.com/bar/doIt/1">
.....
</form>

Результат тотже. при сабмите формы 
Цитата

Источник http://foo.com не найден в заголовке Access-Control-Allow-Origin.

Автор: Samotnik 8.5.2013, 10:46
IE отсылает запрос такого вида:
Цитата

GET http://my.domain/ru/realty/edit HTTP/1.1
Accept: */*
Origin: http://my.domain
Accept-Language: ru-RU
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
Host: my.domain
DNT: 1
Connection: Keep-Alive
Pragma: no-cache

В то время как другие браузеры:
Цитата

GET http://my.domain/ru/realty/edit HTTP/1.1
Host: my.domain
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:20.0) Gecko/20100101 Firefox/20.0
Accept: text/html, */*; q=0.01
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
X-Requested-With: XMLHttpRequest
Referer: http://my.domain/
Cookie: __utma=87823819.1160716052.1363709577.1367502014.1367509134.33; __utma=90583128.779215939.1367937097.1367937097.1367998627.2; __utmz=90583128.1367937097.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); JSESSIONID=9E43AE8EBC2A2C7AEA7CCCEDD6123222; __utmb=90583128.4.8.1367998628775; __utmc=90583128
Connection: keep-alive


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)