getJSON无法读取本地json数据的问题
作者:互联网
1.getJSON无法读取本地json数据的问题
1.1数据量较小
<script type='text/javascript' src='xxxx.json'></script>
1.2数据量庞大
<script>
$(function(){
$.getJSON("test.json", function(data){
alert('abc');
});
});
</script>
结果失败,无法获取JSON文件内容,在谷歌浏览器控制台中报错
XMLHttpRequest cannot load file:///C:/Users/Administrator/Desktop/test.json. Cross origin requests are only supported for protocol schemes: http, data, chrome, se-extension, https.
提示这个原因是:浏览器为了安全性考虑,默认对跨域访问禁止。
知道了原因,接下来是解决方式:
解决一(还不太懂):
在sublime里面 启动sublimeServer,开启服务器模式,在浏览器中通过localhost:8080/index.html访问,再看 debug tool,没有报错了,完美!~成功访问到本地json文件。
好奇助我成长,顺手拖进火狐测了一下,并没有报错
FireFox : 允许读取本地相对路径脚本。
解决二:
查资料,发现还有一种解决方法,不用启动服务器模式,直接更改chrome的设置就行。
在chrome属性设置中,添加启动参数:
--allow-file-access-from-files : 允许本地Ajax请求,也叫file协议下的Ajax请求
--enable-file-cookies : 允许chrome保存本地设置cookie
设置方法:chrome快捷方式–右键“属性”–快捷方式–目标
转载:https://blog.csdn.net/memoriesaier/article/details/81040433
标签:file,chrome,getJSON,json,报错,本地,读取 来源: https://www.cnblogs.com/wanlixiaozuaaa/p/16204816.html