访问iframe页面session过期后跳转到登录页的问题

news/2024/7/5 2:08:33

在MVC中一般都会封装BaseControl 来限制 是否有权限,登录

   public class BaseController : Controller
    {
        public system_user LoginUser{ get; set; }


        protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            bool IsExt = false;

            object obj = Session["login_user"];
            if (obj != null)//&& Session["keyid"] != null
            {
                IsExt = true;
                LoginUser = obj as system_user;
            }

            if (!IsExt)
            {
                filterContext.HttpContext.Response.Redirect("/Login/Login");
                filterContext.Result = new EmptyResult();
                return;
            }

            base.OnActionExecuting(filterContext);
        }
    }

但是,仅通过的new RedirectResult("/Home/Login");只是把Action的返回指向为了/Home/Login,若页面是嵌套在iframe中,这个时候,只是iframe的指向改变了,问不是地址栏的指向改变了,针对这种情况,可在前台页面/Home/Login做限制,如下:

 

<!DOCTYPE html>
 
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>系统-登录</title>
    <link href="/Content/login.css" rel="stylesheet" />
 
    <script type="text/javascript">
        $(function () {
           //判断一下当前是不是做顶层,如果不是,则做一下顶层页面重定向
            if (window != top) {
                top.location.href = location.href;
            }
        });  
    </script>
</head>
<body>
</body>
</html>

 


http://www.niftyadmin.cn/n/4771158.html

相关文章

SQL执行错误 错误消息:SQL Server检测到基于一致性的逻辑I/O错误

--1.设置数据库为单用户模式(会立即断开其他所有用户的连接) ALTER DATABASE YourDatabaseName SET SINGLE_USER WITH ROLLBACK IMMEDIATE; GO--2.修复数据库(允许数据丢失) DBCC CHECKDB (YourDatabaseName, REPAIR_ALLOW_DATA_LOSS)--3.单用户模式关闭(多用户模式开启) ALTER…

Windows 系统 安装SCons

1. 安装python2.7或以上版本&#xff0c;执行python2.x的安装包程序python-2.7.12.amd64.msi进行安装即可 2. 安装scons 下载scons-3.0.4.zip压缩包并解压缩&#xff0c;&#xff08;http://sourceforge.net/projects/scons/files/scons/2.3.2/&#xff09; CMD下进入解压后的…

window下 vs2017-- boost 编译及使用

boost的编译和使用&#xff0c;经过搜集资料和总结&#xff0c;记录成文。感谢文后所列参考资料的作者。 1 下载 地址&#xff1a;http://sourceforge.net/projects/boost/files/boost/1.56.0/ 可以选择 boost_1_56_0.7z 下载。 2 编译 2.1 生成boost的自用的编译工具bjam…

Microsoft Word 2016 VBA开发 通过脚本实现表格内显示、隐藏一行注释

背景 曾经的同事微信求助&#xff0c;在一个类似问卷的docx文件中的某个Table内&#xff0c;分别放入两个按钮&#xff1a;显示、隐藏&#xff0c;用于指导用户进行表格填写 方法 1. 创建一个docm文件&#xff0c;并启用宏 2. 在Visual Basic编辑器中插入如下代码 Public Sub S…

手机号归属地 查询

1、http://www.guisd.com 目前测试 有些号段无法查询出结构 2、http://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel*** 3、https://www.juhe.cn/docs/api/id/72 需注册 免费 1000次/天 4、http://www.114best.com/dh/114.aspx?w百事通

SQL Server去重取所有列方式

select * from table where id in (select max(id) from table group by [去除重复的字段名列表,....])

shell配置java环境变量和批处理配置环境变量

linux配置java环境只需在/etc/profile中添加以下 前提是把jdk解压到/usr/local路径&#xff0c;当然路径可以随便改 export JAVA_HOME/usr/local/jdk1.7.0_79export JAVA_BIN$JAVA_HOME/binexport PATH$PATH:$JAVA_BINexport CLASSPATH$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/to…

Python风靡全宇宙,首要原因竟是它?

众所周知&#xff0c;Python是目前使用最广泛且用户增长最快的编程语言。优雅简洁的语法、强大的第三方库支持等都是Python能够风靡各行各业的原因。然而&#xff0c;你或许不知道&#xff0c;Python能够实现用户飞速增长&#xff0c;背后其实另有玄机。 就让我们从近年来大数据…