码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript同源策略

时间:2015-06-25 15:47:06      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

在web页面的开发中我们经常会说起脚本的跨域访问的问题,这个问题的始作俑者就是javascript语言安全限制中的同源策略(same-origin policy )所造成的。

同源策略简单的说就是一段脚本只能读取来自于同一来源的窗口和文档的属性,这里的同一来源指的是主机名、协议和端口号的组合;

示例:来自 http://www.360.cn/a/b.html 的js脚本访问下列url的结果和原因
URL	结果	原因
http://www.360.cn/c/d.html 	        成功 	 
http://www.360.cn/d/e/f.html 	        成功 	 
https://www.360.cn/a/c.html             失败 	协议不同
http://www.360.cn:81/a/c.html 	        失败 	端口不同
http://www.sina.com.cn/a/b.html 	失败 	主机名不同

另外,那些带src属性的<script><img><iframe><link>等标签是不需要遵 守同源策略的,但是通过src加载的资源,浏览器限制了javascript的权限,不能进行各种的读写。从而,即使请求发了,敏感数据回来了,也是取不 到的。
通过上对比,带有src的标签不被同源策略限制,因为javascript本身就做了读写的限制,而ajax本身就是js的,太灵活了,javascript读写方便,所以它必须遵守同源策略。






JavaScript同源策略

标签:

原文地址:http://my.oschina.net/u/2328177/blog/470621

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!