0

嗨,我正在使用 jsp/sevlet 在 Web 应用程序中工作,我正面临 iframe 中的会话注销页面问题 示例网页

我在我的父页面中使用以下代码来处理我的会话超时

<script type="text/javascript">
    idleTime = 0;
    $(document).ready(function () {
        //Increment the idle time 2ounter every minute.
        var idleInterval = setInterval("timerIncrement()", 60000); // 1 minute

        //Zero the idle timer on mouse movement.
        $(this).mousemove(function (e) {
            idleTime = 0;
        });
        $(this).keypress(function (e) {
            idleTime = 0;
        });
    })
    function timerIncrement() {
        idleTime = idleTime + 1;
        if (idleTime == 15) { // 15 minutes
           window.location = "logoutPage.jsp"
        }
    }
</script>​​​​​​​​​​​​​​​​​​​​

我面临的问题是,如果进程运行超出我的 iframe 页面中的会话时间限制,则父页面是 idel,因此它会自动注销

在其他情况下,如果我在 iframe 页面中使用会话超时代码,那么问题是 样本页 2

注销页面进入 iframe 页面

解决这个谜团的任何建议或其他解释?请告诉我

4

2 回答 2

0

最后我找到了 iframe 问题的解决方案

自动跳出 iframe

iframe 代表内联框架。Iframe 是一种浮动框架,可以插入网页中的任何位置。

网站管理员对 iframe 的担忧是 iframe 可用于将您网站上的页面包含到外部网站中。

您如何防止您网站上的页面被另一个网站通过 iframe 包含在内?

将以下 javascript 代码放置在您网站上所有页面的顶部将确保如果任何其他网站 iframe 对您网站上的页面进行 iframe,您的页面将脱离 iframe 并仅在用户浏览器中显示您的页面。

<script type="text/javascript">
<!--
    if (top.location!= self.location) {
        top.location = self.location.href
                   //or you can use your logout page as
                   //top.location='logout.jsp' here...
    }
//-->
</script>

在整个站点上实现这种 iframe 代码中断的最佳方法是将代码放入外部 javascript 文件中,并将其包含在通用模板文件中。

这对充满这种神秘感的朋友很有用......

于 2012-08-31T11:57:58.007 回答
-1

如果你觉得没问题,试试这个。

将其放在不同的页面中,并使用 JSP 的标记iframe将该页面包含在您的主页中。include

然后试试看。

我实际上认为iframe 仍然与父页面不同。

于 2012-08-31T10:45:56.853 回答