微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

获取跨域iFrame内容

如何解决获取跨域iFrame内容

| 我想知道如何从IFrame跨域获取内容? 我可以从非跨域iFrame获取内容,但是当它位于另一个域上时,JavaScript不允许访问。     

解决方法

        缺少通过您自己的服务器上的代理请求它的权限。 相同的来源政策可以防止这种情况发生(并且有充分的理由;如果将我的银行网站加载到iframe中并阅读我的所有帐户详细信息,我会非常不高兴)     ,        您使用交叉文档消息传递,这是一个示例。这是父页面中的重要代码:
window.addEventListener(\'message\',receiver,false);
function receiver(e) {
    document.getElementById(\'message\').value = e.data;
}
function update_child() {
    var el = document.getElementsByTagName(\'iframe\')[0];
    el.contentWindow.postMessage(\'Updated from parent\',\'*\');
}
子页面具有相同的代码-请注意,您需要能够在两个域上都实现该接口,以使其能够工作,既可以由您自己(如果您控制了这两个域),也可以与另一个域的所有者合作。在生产代码中,应设置(并检查)原点。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。