如果用户尝试直接访问某些页面,即不通过我提供的 iframe,我需要重定向他们。这是为了阻止他们访问其他用户的区域。
我找到的所有解决方案(顺便说一句,有效)都使用 JavaScript - 我目前的工作脚本是
if (top == self) {
var newURL = 'http://www.exampleurlhere.co.uk/'
window.setTimeout('GotoIndex()',0);
}
function GotoIndex() { top.location.href = newURL; }
但是,这当然只有在用户启用了 JavaScript 的情况下才有效,这让我很失望。有没有办法实现这个服务器端?我正在使用 aspx。
谢谢,奥利。
最佳答案
您无法在服务器端检查它,因为 IFrame 请求(通常)与任何其他 HTTP 请求没有区别。但是,您可以使用 GET
参数来指示这是一个 IFrame
<iframe src="mypage?iframe=yes"></iframe>
显然,此解决方案只有在您控制包含 IFrame 的代码时才有效,否则无法在服务器端执行此操作。
关于javascript - 在不使用 JavaScript 的情况下通过 iframe 访问时从页面重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11966926/