可能平时接触到"跨域"这个概念仍是挺频繁的。既然有"跨域"的说法,那么就有"同域"的说法。只是咱们通常称之为"同源"。web
所谓同源策略,就是组织一个域上载入的脚本获取或者操做还有一个域上的文档属性。即受到请求的url的域必须与当前web页面的域一样,也就是意味着浏览器隔离来自不一样源的内容。防止它们彼此之间的操做。跨域
同源策略有效地阻止了一些危急行为,比方咱们打开了多个站点,但是当中一个是木马站点。那么木马站点就有可能窃取其它站点上关于咱们的信息,这就会给用户带来很是大的泄密风险。浏览器
由于有了"同源策略"。大大减小了这样的风险性。由于木马站点与咱们浏览的其它站点不一样源,因此它们没法相互通讯,获取数据。安全
同源策略在必定程度上保护了用户的网络安全。但是比方咱们需要让www.a.com获取www.b.com的时候的数据的时候,就会因为同源策略而没法获取。网络
如下是同源策略的详细操做:post
赞成通讯的有:url
同一域名下的js文件 比方http://www.a.com/a.js 和http://www.a.com/b.js
spa
同一域名下不一样目录的js文件 比方http://www.a.com/xin/a.js 和 http://www.a.com/star/b.js网络安全
不一样意通讯的有:文档
同一域名下的不一样port 比方http://www.a.com:8000/a.js 和 http://www.a.com/b.js
同一域名下的不一样协议 比方http://www.a.com/a.js 和 https://www.a.com/b.js
域名和相应的IP 比方http://www.a.com/a.js 和 http://70.32.92.74/a.js
主域一样但子域不一样 比方http:www.a.com/a.js 和http://xin.a.com/b.js
不一样域名 比方http://www.a.com/a.js 和http://www.b.com/b.js
也就是说。在跨域问题上。域是经过url首部来识别推断的。