博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决浏览器报跨域访问本地json等文件报错问题
阅读量:3896 次
发布时间:2019-05-23

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

在写demo使用pycharm打开时运行正常,单独使用浏览器打开时报错,详细如下:在这里插入图片描述

网上查了这是跨域问题,
因为浏览器收到同源策略的限制,当前域名的js只能读取同域下的窗口属性。
同源策略: 不同的域名, 不同端口, 不同的协议不允许共享资源的, 保障浏览器安全。
前端最佳的解决办法就是使用jsonp
Jsonp(JSON with Padding) 是 json 的一种"使用模式",可以让网页从别的域名(网站)那获取资料,即跨域读取数据。
应用如下:

①比如你要访问tiku.json数据;正常使用jquery获取代码如下:

}$(function(){	$.getJSON('tiku.json',function(data,status){		console.log(data);	})})

然而这样浏览器包跨域错误。

使用jsonp的解决办法如下

除了在前端修改意外,还需要修改tiku.json内容,

修改前(举例):

{‘name’:[{"n1":1,"n2":2}],"value":[{"v1":"a","v2":"b"}]}

修改后(举例):

demo({‘name’:[{"n1":1,"n2":2}],"value":[{"v1":"a","v2":"b"}]})

总的来说就是把tiku.json所有内容content,防止在函数javascript定义的demo函数中,即demo(content)

转载地址:http://beben.baihongyu.com/

你可能感兴趣的文章
基于Hibernate和Struts2的用户管理系统小案例
查看>>
打开.class文件的方法
查看>>
基于windows平台Git+GitHub+Hexo搭建个人博客(一)
查看>>
基于windows平台Git+GitHub+Hexo搭建个人博客(二)
查看>>
Windows平台下SVN安装配置及使用
查看>>
python简便的编辑工具:jupyter notebook
查看>>
使用pip安装的时候出现 ModuleNotFoundError: No module named ‘pip‘
查看>>
Selenium自动化测试(八)之上传文件
查看>>
Selenium UI自动化(Java篇)
查看>>
使用Fiddler模拟弱网进行测试
查看>>
使用POI读取Excel测试用例
查看>>
记一次数据推送的异常解决端口解决
查看>>
linux、mysql、nginx、tomcat 性能参数优化
查看>>
Nginx使用Linux内存加速静态文件访问
查看>>
杀掉nginx进程后丢失nginx.pid,如何重新启动nginx
查看>>
nginx另类复杂的架构
查看>>
Nginx流量复制/AB测试/协程
查看>>
使用NTP服务器完美解决VMware Linux时间无法同步问题
查看>>
机器学习笔记(3)---K-近邻算法(1)---约会对象魅力程度分类
查看>>
机器学习笔记(4)---K-近邻算法(2)---使用sklearn中的KNN算法
查看>>