Iframe跨域通信完美解决方案
跨域通信这个话题在之前已经提到总结过,关于跨域通信大家可以参考同源策略,跨域资源共享的10种方式以及IE下因设置document.domain而无法和Iframe通信的解决方法。
跨域通信这个话题在之前已经提到总结过,关于跨域通信大家可以参考同源策略,跨域资源共享的10种方式以及IE下因设置document.domain而无法和Iframe通信的解决方法。
受同源策略限制,JavaScript不能跨域! 这里提到了同源策略,那么什么是同源策略呢?
同源策略(Same Origin Policy),它是由Netscape提出的一个著名的安全策略。 现在所有支持JavaScript 的浏览器都会使用这个策略。同源策略阻止从一个域上加载的脚本去获取或操作另一个域上的文档属性。也就是说,受到请求的 URL 的域必须与当前 Web 页面的域相同。这说明浏览器隔离来自不同源的内容,以防止它们之间的操作。
最近在开发SDK的过程中发现IE下有个很怪异的问题:在同一域下,因在父页面上设置了document.domain,而导致无法正常和Iframe(也是同域下)进行通信,IE下抛出的错误是:SCRIPT5: 拒绝访问,导致无法操作iframe中的内容。
在实际开发中,大家会经常遇到跨域问题,这时我们就在根据不同的情况选择不同的跨域方式,我整理了一些目前常用的跨域技术与大家分享。