博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转载】ajax IE7,IE8浏览器请求本地资源出现access is denied拒绝访问
阅读量:7117 次
发布时间:2019-06-28

本文共 1388 字,大约阅读时间需要 4 分钟。

在IE7,IE8中,如果双击运行html页面或者直接拖拽html静态页面进入IE7,IE8浏览器中运行查看ajax效果,在xhr对象调用 open方法时会出现access is denied拒绝访问的错误,这个是因为IE7,IE8增加了Native XMLHTTP【XMLHttpRequest对象】支持,在IE7+浏览器下创建ajax对象时如果创建的是MLHttpRequest对象,由于安全 设置的问题,是不允许访问本地资源的。

  而IE6不支持XMLHttpRequest对象,而是使用acx来创建ajax对象,所以双击运行或者拖拽进入浏览器中浏览不会出现 access is denied 拒绝访问错误。IE7或者IE8使用acx来创建时也不会出现access is denied拒绝访问的错误。

有两个解决问题的办法

1.设置浏览器安全。

  点击“工具”->“Internet选项”->“高级”,在“安全”节点下找到“启用本机XMLHTTP支持”,该选项默认是钩选,禁用它后可以解决问题。

  另外,上述设置后可能出现“没有权限”的问题。这里点击“工具”->“Internet选项”->“安全”-> “本地Intranet”-> “站点” ->"高级"->"将网站添加到站点"后将安全级别设置到中低或者低级别。

2.在创建ajax对象时先判断ActiveXObject对象,使用ActiveXObject对象来创建ajax对象

+展开

-JavaScriptvar xhr=false;
if(window.ActiveXObject){
    try{xhr = new ActiveXObject("Msxml2.XMLHTTP.4.0");}
    catch(e1){
      try{xhr = new ActiveXObject("Msxml2.XMLHTTP");}
      catch(e2){
{xhr = new ActiveXObject("Msxml2.XMLHTTP");}}
    }
}
else if(window.XMLHttpRequest){
/*XMLHttpRequest放最后来创建,这样在IE7,IE8中双击运行或者拖拽进入浏览器中浏览就
不会出现access is denied 拒绝访问错误了,因为使用的是acx来创建ajax对象*/
   xhr= new XMLHttpRequest();
}

  其实建议还是先判断XMLHttpRequest对象,因为XMLHttpRequest对象的版本比acx高,高版本的ajax对象错误和性能上都比较好。

  因为网站最终都是要向外发布的,然后通过http协议来访问,这样就不会出现“双击运行或者拖拽进入浏览器”的可能。而通过http协议来访问的话请求的资源只要不跨域,是不会出现access is denied 拒绝访问的错误的。

  如果为了测试方便而“双击运行或者拖拽进入浏览器”来查看效果,就得使用上面的方法来解决出现access is denied拒绝访问的错误了。

 

原文来自: http://www.cnblogs.com/guoxiaojun/articles/1890937.html

转载于:https://www.cnblogs.com/positive/p/3670032.html

你可能感兴趣的文章
Universal USB Installer – Easy as 1 2 3
查看>>
假期小结 BIO, NIO, AIO
查看>>
Jvm(57),类加载器----初次认识加载器
查看>>
poj1053
查看>>
【关键帧提取】基于运动信息(续3)
查看>>
pygame学习笔记(1)——安装及矩形、圆型画图
查看>>
jQuery UI Portlet 1.1.2 发布
查看>>
Intellij Idea @Autowired取消提示
查看>>
继电器是如何成为CPU的
查看>>
零基础 Vue 开发环境搭建 打开运行Vue项目
查看>>
tensorflow 笔记12:函数区别:placeholder,variable,get_variable,参数共享
查看>>
对象图(Object Diagram)—UML图(三)
查看>>
不再联系
查看>>
看板,敏捷的另一种实现方式
查看>>
06 redis中set结构及命令详解
查看>>
跟我一起数据挖掘(19)——什么是数据挖掘(2)
查看>>
10、ASP.NET MVC入门到精通——Model(模型)和验证
查看>>
vscode打造最佳的markdown编辑器
查看>>
weblogic mime-type
查看>>
探讨.net Socket支持在线连接数量
查看>>