同源策略、跨域

2016-08-23  本文已影响0人  盖被吹空调

什么是同源策略##

同源策略是浏览器最基本的功能,同源指得是相同的域名、协议和端口号,不同的源的客户端脚本在没有明确授权的情况下,无法相互读取对方的资源称之为同源策略。

什么是跨域?跨域有几种实现形式##

跨域即突破同源策略限制的方法,并且都需要得到服务端的支持,有如下几种形式:

JSONP:html中script标签可以引入其他域下的js,比如引入线上的jquery库。

CORS:CORS 的表象是让你觉得它与同源的 ajax 请求没啥区别,代码完全一样。

降域

使用document.domain的方法实现相同基础域名之间的跨域
例:有三个域名
a.test.com
b.test.com
test.com
可在a.test.com和b.test.com加入document.domain = "test.com"实现以上三个域名之间的跨域。

postmessage

postmessage为window的方法,可实现跨文档、多窗口、跨域消息的传递,postMessage(data,origin)方法接受两个参数,data是要传递的数据,origin是目标的源
参考参考:http://www.cnblogs.com/dolphinX/p/3464056.html

同源策略及跨域出错演示##

同源策略.png 跨域出错.png

JSONP跨域及CORS跨域演示##

JSONP跨域.png CORS跨域.png
上一篇 下一篇

猜你喜欢

热点阅读