配置chrome支持本地(file协议)ajax请求

通过在Chrome启动时添加参数`--allow-file-access-from-files`,可以解决本地file协议下的Ajax请求跨域问题。此外,该参数也能解决iframe与父页交互及window.open打开页面opener为null的难题。然而,直接在Chrome中可能不生效,可行的解决方案是将页面部署到服务器上进行访问,以规避浏览器的安全限制。
摘要由CSDN通过智能技术生成
将html代码拖拽进入chrome通过file协议浏览时,发送的ajax请求本地文件,会报跨域错误。
XMLHttpRequest cannot load file:///E:/webs/extJS/ext-3.3.0/examples/csdn/combobox.txt?_dc=1414738973999. Cross origin requests are only supported for protocol schemes: http, data, chrome-extension, https, chrome-extension-resource.

 解决办法是给chrome添加启动参数:--allow-file-access-from-files ,这样本地ajax请求就不会报跨域错误了。(注意如果给chrome添加多个启动参数,每个启动参数“--”之前要有空格隔开,如"C:\Program Files\Google\Chrome\Application\chrome.exe" --enable-file-cookies --allow-file-access-from-files

 

  如何添加chrome启动参数以便支持file协议下的ajax请求,具体看这个:chrome无法保存本地设置cookie解决办法

 

  添加了--allow-file-access-from-files启动参数后,还可以解决本地file加载文件,导致iframe和父页无法相互访问,window.open打开的页面使用opener为null的问题,参考:chrome本地测试访问iframe,parent,opener null解决办法

 

上述方法我自己没试验成功!!!找到了另一个可行的方案~~~

原因: 谷歌浏览器内核为了安全机制,不允许这样方式访问其他页面,但是其他浏览器却允许这种情况。

解决方法: 将html页面部署到服务器再访问,就不会出现这种情况了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值