Доступ XMLHttpRequest запрещен при попытке доступа к файлам из расположения веб-сервера - IE8 - PullRequest
0 голосов
/ 24 сентября 2019

Я работаю над JavaScript, где я пытаюсь получить доступ к URL-пути с помощью xmlhttprequest.код отлично работает с activexobject (я не хочу использовать объект activex).когда я пытаюсь вызвать его с помощью xmlhttprequest, он не работает.выдает ошибку о том, что доступ запрещен.Я использую версию IE8 здесь.Я уже попробовал следующий обходной путь

  • , включающий "доступ к источникам данных через домен в интернет-варианте"

  • добавление доверенных сайтов

if(src) //scr = templates/mytemplate
{
	try{
	var xhr= new XMLHttpRequest();   //new ActiveXObject("Microsoft.XMLHTTP"); works fine 
xhr.onreadystatechange=function()
{
	if(xhr.readyState==4)
{
  log.profile(src);
if(xhr.status==200||xhr.status==0)
{
	//do some action
}
}

element.html(xhr.responseText);
log.profile(src);
xhr.open("GET",src,true);
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xhr.send(null);
}}catch(e){
	alert("unable to load templates"+e); // here i am getting error saying acess denaied 
}

1 Ответ

0 голосов
/ 24 сентября 2019

Здесь вы получили ошибку «Отказано в доступе». Похоже, вы пытаетесь запустить HTML-страницу в браузере IE.Вам необходимо разместить веб-страницу на любом веб-сервере. Для целей тестирования я разместил этот образец страницы на сервере IIS.То, что вы можете попытаться получить доступ к веб-странице из IE, поможет перейти на страницу без этой ошибки.

Я попытался выполнить тест с этим примером кода и протестировал его в IE 11 (режим документа IE-8).

<!DOCTYPE html>
<html>
<body>

<h2>Using the XMLHttpRequest Object</h2>

<div id="demo">
<button type="button" onclick="loadXMLDoc()">Change Content</button>
</div>

<script>
function loadXMLDoc() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      document.getElementById("demo").innerHTML =
      this.responseText;
    }
  };
  xhttp.open("GET", "xmlhttp_info.txt", true);
  xhttp.send();
}
</script>

</body>
</html>

Вывод:

enter image description here

Исходя из результатов моего тестирования, код работает нормально с документом IE-8режим, поэтому он также должен работать в браузере IE-8.

...