摘要:同源策略是什么同源策略是浏览器的一个安全功能,不同源的数据禁止访问。或许你可以说验证,在浏览器没有同源策略的情况下这些都可以绕过去。总结同源策略是蛮好的,防御了大部分的攻击。
前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提升技术水平,打牢基础知识的中心思想,我们开课啦(每周四)。
同源策略是什么?同源策略是浏览器的一个安全功能,不同源的数据禁止访问。
所以 lilnong.top 下的 ajax 访问 51vv.com 数据是会报错。(network 可以看到 response,证明限制是浏览器方的限制)
当然,也有例外
表单提交、链接
这些项等同于切换页面
script标签的src、link标签的href、img标签的src、iframe标签的src
上述的资源可以引用,但是不可获取内容。
img 可以显示出来,但是你无法放入canvas二次使用,会把canvas的源污染。
iframe 可以显示,不可以获取DOM
script 不可获取报错代码位置。
同源的定义端口、域名、协议 都相同,定义为同源。
针对http://www.lilnong.top/static这个地址来说。端口(80),域名(www.lilnong.top),协议(http)
URL | 端口 | 域名 | 协议 | 描述 |
---|---|---|---|---|
https://www.lilnong.top | 80 | www.lilnong.top | https | 协议不同,不同源 |
http://lilnong.top | 80 | lilnong.top | http | 域名不同,不同源 |
http://lilnong.top:8080 | 8080 | lilnong.top | http | 域名不同,端口不同,不同源 |
http://www.lilnong.top:8080 | 8080 | www.lilnong.top | http | 端口不同,不同源 |
http://www.lilnong.top/ | 80 | www.lilnong.top | http | 同源 |
http://www.51vv.com | 80 | www.51vv.com | http | 域名不同,不同源 |
安全问题
例子1:普通的网络用户,不会去记域名等内容。如果我在我自己的页面内,嵌套一个并把他放大,不就和淘宝一模一样了?并且还会有淘宝的状态信息。
这时候我们可以获取用户的密码、给用户创建订单、注销用户的账户等等有危害性的操作。
例子2:领导说要一个腾讯新闻。嗯好,我们放大自适应。
这时候,我们可以加点小广告,截获一些用户操作。分分钟不花钱。得到了一个腾讯新闻。
数据归属问题
大家都知道爬虫吧。想起来前几天在思否看到的头条(“饭友”APP 未经许可抓取微博数据,被判赔偿210万)。
如果说没有同源策略,饭友直接 ajax 拉取微博数据。或许你可以说 referer 验证,在浏览器没有同源策略的情况下这些都可以绕过去。
微博方看到的就是一个正常的微博用户,正常的ip,访问了他们的接口。
那么爬虫呢?爬虫是主动触发的操作,是他们使用他们的ip,伪造成一个合理的用户,去抓取数据。
同源策略是蛮好的,防御了大部分的攻击。但是合理是合理,一些特殊情况下我们也是要绕过这个策略,下节我们讲跨域。
微信公众号:前端linong 初级阶段文章目录前端培训-初级阶段(17) - 数据存储(cookie、session、stroage)
前端培训-初级阶段(13) - 正则表达式
前端培训-初级阶段(13) - 类、模块、继承
前端培训-初级阶段(13) - ECMAScript (内置对象、函数)
前端培训-初级阶段(13) - ECMAScript (语法、变量、值、类型、运算符、语句)
前端培训-初级阶段(13、18)
前端培训-初级阶段(9 -12)
前端培训-初级阶段(5 - 8)
前端培训-初级阶段(1 - 4)
中级阶段文章目录前端培训-中级阶段(2) - 事件(event) 事件冒泡、捕获 - (2019-06-20期)
前端培训-中级阶段(3) - DOM 文档对象模型(2019-06-27期)
前端培训-中级阶段(4)- BOM 浏览器对象模型(2019-07-04期)
前端培训-中级阶段(5)- jQuery的概念与基本使用(2019-07-11期)
前端培训-中级阶段(6)- jQuery元素节点操作(2019-07-18期)
前端培训-中级阶段(7)- jQuery的事件绑定链式操作及原理(2019-07-25期)
前端培训-中级阶段(8)- jQuery元素属性样式操作(2019-08-01期)
前端培训-中级阶段(9)- 原生Ajax的运行原理与实现(2019-08-08期)
资料前端培训目录、前端培训规划、前端培训计划
浏览器同源策略及跨域的解决方法
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/105773.html
摘要:上节我们讲了同源策略,这节我们讲讲如何跨域。当这些从的脚本执行出错,因为违背了同源策略为了保证用户信息不被泄露,错误信息不会显示出来,取而代之只会返回一个。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提升技术水平,打牢基础知识的中心思想,我们开课啦(每...
摘要:前端最基础的就是。帮助从旧的事件方法转换,和。方法移除用绑定的事件处理程序。特定的事件处理程序可以被移除元素上提供事件名称,命名空间,处理函数。用于过滤器的触发事件的选择器元素的后代。事件触发模拟触发原生使用触发。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS)...
摘要:前端最基础的就是。帮助从旧的事件方法转换,和。方法移除用绑定的事件处理程序。特定的事件处理程序可以被移除元素上提供事件名称,命名空间,处理函数。用于过滤器的触发事件的选择器元素的后代。事件触发模拟触发原生使用触发。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS)...
摘要:前端最基础的就是。对应,是标签的属性。获取匹配元素相对父元素的偏移。返回的对象包含两个整型属性和。一组包含作为动画属性和终值的样式属性和及其值的集合动画的额外选项。指示是否在效果队列中放置动画。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提升技术水平,...
摘要:前端最基础的就是。对应,是标签的属性。获取匹配元素相对父元素的偏移。返回的对象包含两个整型属性和。一组包含作为动画属性和终值的样式属性和及其值的集合动画的额外选项。指示是否在效果队列中放置动画。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提升技术水平,...
阅读 954·2023-04-25 23:50
阅读 1953·2021-11-19 09:40
阅读 598·2019-08-30 13:50
阅读 2726·2019-08-29 17:11
阅读 1040·2019-08-29 16:37
阅读 2984·2019-08-29 12:54
阅读 2791·2019-08-28 18:17
阅读 2636·2019-08-26 16:55