摘要:这次经过验证发现正好相反在下的页面中向下的发送请求控制台信息显示跨域不被允许查看服务器记录,找到了这条请求的记录所以同源策略应该是浏览器在接收加载资源之前对其来源进行了检查,然后限制加载。
同源策略 (Same origin policy)
是一种约定,它是浏览器最核心也最基本的安全功能,Web是构建在同源策略基础之上的,浏览器是针对同源策略的一种实现。
之前一直认为,它是通过对发出的请求进行检查是否同源,然后决定是否对该请求加以限制来实现。这次经过验证发现正好相反:
在www.test.com下的页面中向www.domian.com下的a.php发送ajax请求:
$.ajax({ type:"get", url:"http://www.domain.com/a.php", async:true, success:function(res){ console.log(res) }, error:function(){ console.log("error") } });
控制台信息显示跨域不被允许:
XMLHttpRequest cannot load http://www.domain.com/a.php. No "Access-Control-Allow-Origin" header is present on the requested resource. Origin "http://www.test.com" is therefore not allowed access.
查看服务器access.log记录,找到了这条请求的记录:
所以同源策略应该是浏览器在接收加载资源之前对其来源进行了检查,然后限制加载。文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/88713.html
摘要:浏览器的同源策略固然保障了互联网世界的数据隐私与数据安全,但是如果当我们需要使用跨域请求资源时,同源策略又会成为开发者的阻碍。我们之前提到过,如果想要绕过浏览器同源策略,实现使用技术跨域获取资源,需要服务端和客户端的协同合作。 浏览器的同源策略固然保障了互联网世界的数据隐私与数据安全,但是如果当我们需要使用AJAX跨域请求资源时,同源策略又会成为开发者的阻碍。在本文中,我们会简单介绍需...
摘要:一基于维基百科的定义,是一种在单个连接上进行全双工通讯的协议。让我们看看这个模型的具体实现下面是客户端告知服务端要升级为协议的报头下面是服务端向客户端返回的响应报头想知道这些报头中的字段中代表什么可以参考维基百科下的说明。 让我们先简单回顾一下之前谈到的内容,AJAX是一种无页面刷新的获取服务器资源的混合技术。而基于浏览器的同源策略,不同域之间不可以发送AJAX请求。但是在某些情境下,...
摘要:同源策略指的是当前页面和目标协议域名和端口均相同。发出请求的页面所在域。响应的头部信息在后端处理,不在此处讲解。该事件会在数据接收期间不断触发,但间隔不确定。服务器确认允许之后,才发起实际的请求。 ajax作为前端开发必需的基础能力之一,你可能会使用它,但并不一定懂得其原理,以及更深入的服务器通信相关的知识。在最近两天的整理过程中,看了大量的文章,发现自己的后端能力已经限制自己在网络通...
摘要:所以浏览器认为这是安全的。如果你细心的话你会发现,其实请求已经发送出去了,你只是拿不到响应而已。所以浏览器这个策略的本质是,一个域名的,在未经允许的情况下,不得读取另一个域名的内容。但浏览器并不阻止你向另一个域名发送请求。 同源策略与CORS跨域 PS:这篇文章是紧接着JSONP原理和Ajax学习与理解写的,有些内容是承接了上两篇文章.这篇文章只算是我的个人学习笔记,内容没有经过精心排...
摘要:网上有很多前端的学习路径文章,大多是知识点罗列为主或是资料的汇总,数据量让新人望而却步。天了解一个前端框架。也可以关注微信公众号晓舟报告,发送获取资料,就能收到下载密码,网盘地址在最下方,获取教程和案例的资料。 前言 好的学习方法可以事半功倍,好的学习路径可以指明前进方向。这篇文章不仅要写学习路径,还要写学习方法,还要发资料,干货满满,准备接招。 网上有很多前端的学习路径文章,大多是知...
阅读 2424·2021-11-23 10:04
阅读 1494·2021-09-02 15:21
阅读 892·2019-08-30 15:44
阅读 1060·2019-08-30 10:48
阅读 707·2019-08-29 17:21
阅读 3553·2019-08-29 13:13
阅读 1983·2019-08-23 17:17
阅读 1784·2019-08-23 17:04