同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。
同源策略,它是由Netscape提出的一个著名的安全策略。
现在所有支持JavaScript 的浏览器都会使用这个策略。
所谓同源是指,协议,域名,端口相同。
ok,我们下面举个例子来说明什么是同源策略,我们以360官网为例
360官网的网址是https://www.360.cn/
上面网址的协议是https,域名是www.360.cn,端口是443
了解了上述之后,我们再找其他几个页面对比一下看看他们是否是同源
1、360安全浏览器官网,地址是https://browser.360.cn/
浏览器官网地址的协议是https,域名是browser.360.cn,端口是443
我们对比360官网发现浏览器的域名和360官网域名是不同的,所以他们两个地址是非同源的
但是我们如果打开https://browser.360.cn/se/发现也是浏览器的官网
这个地址的话,协议是https,域名是browser.360.cn,端口是443,只是后面的路径多了一个se,所以这两个地址是同源的
2、安全卫士官网,地址是http://weishi.360.cn/
卫士官网地址协议是http,域名是weishi.360.cn,端口是80
我们对比360官网发现卫士的协议,域名和端口和360官网均不同,所以他们两个地址是非同源的
3、360官网安全资讯,地址是http://www.360.cn/news.html
安全资讯页面的协议是http,域名是www.360.cn,端口是80
我们对比360官网发现安全资讯的协议和端口和360官网域名是不同的,所以他们两个地址是非同源的
最后总结,同源策略是浏览器的行为,是为了保护本地数据不被JavaScript代码获取回来的数据污染,因此拦截的是客户端发出的请求回来的数据接收,即请求发送了,服务器响应了,但是无法被浏览器接收。 |
|
|
|
评论
直达楼层