【问题标题】:Force redirect to specific Action (ASP MVC)强制重定向到特定操作 (ASP MVC)
【发布时间】:2009-11-05 20:36:39
【问题描述】:

在我正在进行的 Web 项目中,我遇到了关于重定向的问题。场景是这样的:

a) 用户登录。

b) 特定表中的记录数决定用户是否会被重定向到特定控制器/动作

c) 用户到达该特定控制器/动作并在此处执行某些操作

d)(在完成必须做的事情之后)必须强制用户退出(这可以通过某种方式自动完成吗?)

我想我已经实现了这个场景,直到 c) 使用 ActionFilterAttribute(通过使用该特定类装饰所有控制器)。

但是如何强制用户退出呢?

提前致谢

【问题讨论】:

  • 发布你目前得到的代码

标签: asp.net-mvc


【解决方案1】:

FormsAuthentication.SignOut 从浏览器中删除当前的表单身份验证票。然后,用户将需要在访问受限资源之前进行身份验证。

【讨论】:

    【解决方案2】:

    这实际上取决于“注销”在您的应用程序中的含义。在您重定向到任何地方之前,它可以像 Session.Abandon 一样简单。

    【讨论】:

    • 我明白你想说什么!所以我现在的问题是:我如何保存该特定状态的信息,以便在操作中检索该信息?使用会话、全局变量、...??
    【解决方案3】:

    假设您使用的是 FormsAuthentication,我有一个 Logout 方法,看起来像这样:

        public static string Logout(HttpContext context, string defUrl)
        {
            FormsAuthentication.SignOut();
            var vir = context.Request.ApplicationPath;
    
            return String.IsNullOrEmpty(vir)
                       ? defUrl
                       : VirtualPathUtility.Combine(vir, defUrl);
        }
    

    FormsAuthentication.SignOut() 是关键部分......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多