[XMLHttpRequest访问被拒绝,但试图从Web服务器位置访问文件-IE8
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[XMLHttpRequest访问被拒绝,但试图从Web服务器位置访问文件-IE8相关的知识,希望对你有一定的参考价值。
我正在使用javascript尝试使用xmlhttprequest访问url路径。该代码可以与activexobject正常工作(我不想使用activex对象)。当我尝试使用xmlhttprequest调用它时,它不起作用。它给出一个错误,指出访问被拒绝。我在这里使用IE8版本。我已经尝试了以下解决方法
启用“在Internet中跨域访问数据源选项”
添加受信任的站点
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
}
[这里,您收到访问被拒绝的错误。 看起来您直接尝试在IE浏览器中运行HTML页面。您需要将网页托管在任何Web服务器上。为了进行测试,我将此示例页面托管在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>
输出:
根据我的测试结果,代码在IE-8文档模式下工作正常,因此它也应在IE-8浏览器中工作。
以上是关于[XMLHttpRequest访问被拒绝,但试图从Web服务器位置访问文件-IE8的主要内容,如果未能解决你的问题,请参考以下文章
IE 11 错误 - 访问被拒绝 - XMLHttpRequest
SCRIPT5:在 IE9 中对 xmlhttprequest 的访问被拒绝
跨域调用错误:XMLHttpRequest:网络错误 0x80070005,访问被拒绝
XMLHttpRequest:网络错误 0x80070005,在 Microsoft Edge(但不是 IE)上拒绝访问
浏览器 11 | Angular 4 - CORS 请求失败(XMLHttpRequest:网络错误 0x80070005,访问被拒绝。)