解决浏览器ajax请求本地文件报错问题

解决浏览器ajax请求本地文件报错问题,第1张

近来在做自己的UI库的时候,遇到一个问题,浏览器发送的ajax请求本地文件,会报跨域错误。报错如下:

XMLHttpRequest cannot load file:///xxx

Cross origin requests are only supported for protocol schemes: http, data, chrome-extension, https, chrome-extension-resource.

解决方案如下:chrome添加启动参数:--allow-file-access-from-files ,这样本地ajax请求就不会报跨域错误了。注意每个启动参数“--”之前要有空格隔开。

做法:

找到谷歌浏览器启动程序exe,发送快捷方式到桌面,在桌面右击谷歌浏览器,选择属性,点击快捷方式选项卡,在目标字段后添加启动参数:--allow-file-access-from-files,修改完成后点击确定即可。重启浏览器就不会报错了。

具体 *** 作如下图:

开发的时候,会经常使用一些假数据,这个时候我们就会在本地进行ajax请求(开发工具使用vscode,如果是webstrom则不会有这个问题),来获取数据,例如ajax本地请求json文件,但是在请求的时候会遇到跨域问题:

建议使用火狐浏览器,因为谷歌浏览器是不允许跨域请求的,因为不安全,但是我们现实中,很多地方是必须要用到跨域请求,谷歌浏览器严格遵循,但是火狐浏览器考虑到现实因素,就可以使用跨域,但是需要进行一些设置.

1、在Firefox的地址栏输入“about:config”,回车

2、在过滤器(filter)中搜索“security.fileuri.strict_origin_policy”(第一次会出现安全协议,点击确认即可)

3、双击security.fileuri.strict_origin_policy设置为false

4、关闭目前开启的所有Firefox窗口,然后重新启动Firefox,这个时候就可以了.

虽然会报格式不佳的错误,但是数据还是请求出来滴!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12102010.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存