当前位置: 代码迷 >> 综合 >> FormsAuthentication.SignOut() 后,并未真正退出的原因
  详细解决方案

FormsAuthentication.SignOut() 后,并未真正退出的原因

热度:62   发布时间:2023-12-10 10:47:30.0

使用Asp.net开发,使用Forms验证,在退出按钮里写 FormsAuthentication.SignOut() 并清除Session和Cookie,发现退出后,使用Request.IsAuthenticated获取到的值依然是True。

解决办法:

FormsAuthentication.SignOut() 必须写在逻辑最后,在执行FormsAuthentication.SignOut()方法后,不能再进行清除Cookie的操作。

或者写入session清除更明了有效。

  1. public ActionResultLogout()
  2. {
  3. FormsAuthentication.SignOut();
  4. Session.RemoveAll();
  5. }

参考文章http://demo.tc/Post/700