您的位置:首页 > 其它

chrome浏览器处理本地Ajax跨域

2016-12-17 10:55 363 查看

chrome浏览器下

项目开发过程中,用到了Ajax异步请求。若将项目放在本地服务器中,通过localhost访问文件,不会报错。若直接通过file://访问文件就会报错。

报错信息:

XMLHttpRequest cannot load file:///C:/wamp/www/ejs/abc.ejs. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.


这是因为直接通过file://访问文件,Ajax本地跨域。浏览器为了安全性考虑,默认对跨域访问禁止。

解决方法1:将项目放在本地服务器中,通过localhost访问文件。

解决方法2:给浏览器传入启动参数(allow-file-access-from-files),允许跨域访问。

(1)直接在快捷键图标右键,点击属性,修改目标(在后面加上–allow-file-access-from-files,注意–前面有一个空格),这样就可以正确访问了。



(2)也可以通过cmd控制台,输入

“C:\Program Files (x86)\Google\Chrome\Application\chrome.exe” –allow-file-access-from-files

这样就可以正确访问了。

其他浏览器:

360安全浏览器、360极速浏览器:设置同chrome浏览器

IE浏览器、火狐浏览器:试验了一下,似乎浏览器没有对跨域访问禁止。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: