javascript - 阻止 iframe 设置 parent.location(防止 framebusting)

标签 javascript iframe

我在我自己的域中有一个网站,我将 iframe 包含到其他域中的其他站点以进行快速预览。

问题是一些网站有 framebusting 代码,可以将用户从我的网站重定向。

我怎么能阻止它。在 framebuster 的情况下,即使根本不显示 iframe 也比重定向更好。

这个重定向是否应该被相同的站点来源保护 btw 阻止?


更新

好的,所以似乎无法阻止它,但是否可以完全不显示框架。

我尝试使用双框架方法:A 和 B 在我的网站上,B 包含 C,当 B 获取 window.onbeforeunload 时,它会向 A 发送一条消息以删除 B。这也不起作用,因为框架似乎可以一直访问顶部窗口,而不仅仅是父窗口。

window.onbeforeunload 用于阻止重定向顺便说一句,但随后您必须显示一个对话框。

最佳答案

这无法完成,因为如果违反同源策略,您将无法访问 iframe 中页面的 DOM。

只是不要这样做。如果人们有 framebusting 代码,他们显然不希望他们的页面位于框架中。尊重这一点。

关于javascript - 阻止 iframe 设置 parent.location(防止 framebusting),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3746778/

相关文章:

javascript - 在 Puppeteer 中连接浏览器

javascript - 在我的应用程序启动时创建所有路由是个好主意吗?

javascript - Web Widget - 安全性和实现方式

javascript - document.getElementsByName 返回 NULL,除非我查看 HTML 源

php - iframe 根据 javascript 和 php 变化

javascript - 为什么我无法使用 angularjs $http.get() 从服务器获取数据?

javascript - Sails.js + Grunt "Cannot find module"错误

javascript - 我如何在没有 bundler 的情况下使用 react.js?

javascript - 是否可以在 iframe 之间传递 ArrayBuffer?

html - 通过 iFrame 登录不适用于 IE9?