跨域演示
2017-04-26 本文已影响47人
辉夜乀
jsonp
Web页面上调用js文件时不受跨域的影响(不仅如此,我们还发现凡是拥有”src”这个属性的标签都拥有跨域的能力,比如<script>、<img>、<iframe>
);
jsonp就是利用了<script src="xxxx"> </script>
这个标签不受跨域影响。
CORS
CORS:全称为 Cross-Origin Resource Sharing,跨域资源共享,是一种 ajax 跨域请求资源的方式,支持现代浏览器,IE支持10以上。
CORS的实现方式是,在后端的响应头添加一个
Access-Control-Allow-Origin
属性,属性的值是允许的域名。它的好处是前端的请求就是ajax,不需要修改,只要后端开访问权限即可,很方便。
降域
降域代码
页面ifram内部嵌套一个网页,如果域名不同,就不能互相操作,因有跨域问题,如果域名的后缀是一样的,只是前面不一样,可以用降域来解决。
postMessage
postMessage()方法允许来自不同源的脚本采用异步方式进行有限的通信,可以实现跨文本档、多窗口、跨域消息传递。
postMessage(data,origin)方法接受两个参数
- data:要传递的数据
- origin:字符串参数,指明目标窗口的源,协议+主机+端口号[+URL]