本文根据其他文章做修改和补充。
一、同源策略的产生
JS可以读取/修改网页的值。
一个浏览器中,打开一个银行网站和一个恶意网站,如果恶意网站能够对银行网站进行修改,那么就会很危险。
你打开了恶意网站和另一个网站,如果没有同源限制,该恶意网站就可以构造AJAX请求频繁在另一个网站发广告帖。
同源策略就是为了解决这类问题而出现的。
二、什么是同源策略(举例)
同源策略,即拥有相同的协议(protocol),端口(如果指定),主机(域名)的两个页面是属于同一个源。
然而在IE中比较特殊,IE中没有将端口号加入同源的条件中,因此上图中端口不同那一项,在IE中是算同源的
三、不遵循同源策略的标签
<script> <img> <iframe>中的src,href都可以任意链接网络资源,相当于对所要求的源进行了一次请求。
四、源继承
来自about:blank,javascript:和data:URLs中的内容,继承了将其载入的文档所指定的源,因为它们的URL本身未指定任何关于自身源的信息。