在FormsAuthentication.SignOut()上发送HTTP标头后,服务器无法修改cookie

时间:2012-05-21 21:38:55

标签: asp.net-mvc forms-authentication

我已将MVC应用程序配置为使用表单身份验证。我通过调用LogOff操作

来注销用户
 public ActionResult LogOff()
    {
        FormsAuthentication.SignOut();

        DropUserInfo();

        return RedirectToUrl(null, "Home", "Index", null);
    }

但每次代码到达FormsAuthentication.SingOut()行时,应用程序都会抛出异常

  

服务器无法在发送HTTP标头后修改cookie

错误消息说的非常清楚,您无法理解,在调用FormsAuthentication.SingOut()方法时,Http标头是如何被发送的。

所以问题是导致错误的原因,以及如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

' ave在Action Filter中调用LogOff()函数之前启动了Redirect()方法调用,这导致抛出错误。

希望这会帮助别人。