什么是同源策略
- 首先同源策略是浏览器的一种安全策略,所有同源策略的限制都是浏览器给予前端页面的。
- 同源的源指的就是URL,什么样的URL属于同源呢,有三个限制。 必须URL的protocol\prot\host相同,通俗一点讲就是你url前面的必须一摸一样。
原始URL http://A.B.com/C/D
URL | 是否同源 | 原因 |
---|---|---|
http://A.B.com/C/E | 同源 | |
http://A.B.com/C/E/F | 同源 | |
https://A.B.com/C/E | 同源 | 协议不同 |
http://A.B.com:81/C/E | 同源 | 端口不同 |
http://J.B.com/C/E | 同源 | 主机不同 |
同源策略就是浏览器要遵守的一种协议。浏览器就相当于一个办公大楼,URL对应一个楼层的一个房间(即URL)。同一个楼层就相当于是同一家公司,是自己人(即同源)。我可以使用所在房间内的所有资源(板凳椅子等),同时也能使用同楼层的资源,但是我不可以使用其他楼层的资源。这样就可以保护各个楼层的安全,防止有人进行盗窃呀偷看机密文件呀什么的。
但是这样同样会出现一个问题,就是如果我租用了这幢大楼的AB两层,那么同源策略就是不允许A的员工进入B楼层,即使两个楼层都是我的。虽然这样尽职尽责,但是对于我不合理呀。
所以就引出