zoukankan      html  css  js  c++  java
  • mvc ajax访问后台时session过期无法跳转到Login页面问题解决

    public class BaseController : Controller
        {
           protected User UserInfo
            {
                set
                {
                    Session["UserInfo"] = value;
                }
     
                get
                {
                    if (Session["UserInfo"] == null)
                    {
                        return null;
                    }
                    else
                    {
                        return (User)Session["UserInfo"];
                    }
                }
            }
     
            protected override void OnActionExecuting(ActionExecutingContext filterContext)
            {
                //验证码
                if (filterContext.ActionDescriptor.ActionName.Equals("ValidateCode", StringComparison.CurrentCultureIgnoreCase))
                {
                    return;
                }
                #region Session判断
                if (UserInfo==null && !filterContext.ActionDescriptor.ActionName.Contains("Login"))
                {
                    filterContext.Result = //new RedirectResult("/Home/Login");//这样也可以
                    new RedirectToRouteResult(
                            new System.Web.Routing.RouteValueDictionary { { "controller", "Home" }, { "action", "Login" } });
                    //Response.Redirect("/Home/Login");//不建议这个,它会继续往下执行action
                    return;
                }
                #endregion
     
                base.OnActionExecuting(filterContext);
            }
     }
    

    前台解决嵌套iframe问题(针对ActionResult返回页面有效,用ajax请求无效)

    <script type="text/javascript">
            $(function () {
               //判断一下当前是不是做顶层,如果不是,则做一下顶层页面重定向
                if (window != top) {
                    top.location.href = location.href;
                }
            });  
        </script>

    针对ajax请求,使用以上方式,ajax请求是没有变化的,ajax返回的状态码302,而Login返回状态码200,理论是显示的,但是

  • 相关阅读:
    Extjs系列篇(3)—-model数据模型
    js中parseInt()会导致的一些问题
    Extjs系列篇(2)—-初步了解
    一步一步学python(七)
    一步一步学python(六)
    一步一步学python(五) -条件 循环和其他语句
    一步一步学python(四)
    一步一步学python(三)
    MFC socket网络通讯核心代码
    MFC 遍历FTP服务器目录中文乱码问题
  • 原文地址:https://www.cnblogs.com/Fooo/p/9089773.html
Copyright © 2011-2022 走看看