首页 > Web开发 > 详细

js跨域涉及代理页面的解决方案的原理

时间:2014-02-28 17:59:22      阅读:406      评论:0      收藏:0      [点我收藏+]


window.name:iframe目标与宿主都可以访问iframe对应window的name属性(同域时),srouce通过iframe引用target,target接受请求后给出数据放置于target的window.name中,即source的iframe的contentWindow.name中

代理的原理是利用一个iframe对应一个window即contentWindow,一个window对应一个name,window的location的变化不会引起name的变化。需要代理时,只需使iframe的contentWindow.location指向proxy,此时contentWindow.name不会改变。


location.hash:原理是target可以访问target的location,source可以一开始通过设置iframe的src写入hash,此时source向iframe传消息;target通过parent.location.hash或代理向source传消息。

代理的原理是source用iframe引用target,target用iframe引用proxy,source与proxy同域,所以proxy可以通过 parent.parent来访问到source。

本文出自 “DSpace” 博客,请务必保留此出处http://smqhws.blog.51cto.com/2365786/1364617

js跨域涉及代理页面的解决方案的原理,布布扣,bubuko.com

js跨域涉及代理页面的解决方案的原理

原文:http://smqhws.blog.51cto.com/2365786/1364617

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!