Msxml2.XMLHTTP.6.0 и HTTP 301 перемещены постоянно перенаправляет
Мне говорят, что MsXML2 следует перенаправлениям. Однако я получаю ошибку "HTTP 0" из скрипта при доступе к URL-адресу, который был перемещен.
Мне нужно, чтобы это работало, потому что это гаджет Windows (боковая панель), которым пользуются 300 000 пользователей. И я перемещаю сайт, и хочу, чтобы все звонки на старые версии все еще проходили.
Это упрощенный код:
function MyHttpCall() {
var httpReq = new ActiveXObject("Msxml2.XMLHTTP.6.0");
httpReq.onreadystatechange = function() {
if (httpReq.readyState < 4) return;
if (httpReq.status != 200) alert("HTTP " + httpReq.status);
alert ("Houston we have contact");
}
httpReq.open("GET", myURL, true);
httpReq.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
httpReq.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
httpReq.setRequestHeader("Pragma", "no-cache");
httpReq.setRequestHeader("If-Modified-Since", "Tue, 01 Jan 2008 00:00:00 GMT");
httpReq.send();
}
Я предполагаю, что это связано с httpReq.status!= 200, но я думал, что readystatechange постоянно запускает события, когда состояние изменяется. Запустите один для HTTP 301, а другой для HTTP 200.
1 ответ
Согласно статье Microsoft, междоменные перенаправления не разрешены в MsXML. Скорее всего, это может быть так.