在 ASP.NET 中注销时如何杀死用户的会话
Posted
技术标签:
【中文标题】在 ASP.NET 中注销时如何杀死用户的会话【英文标题】:How to kill the Session of User when he LoggedOut in ASP.NET 【发布时间】:2012-04-03 17:45:08 【问题描述】:我有一个 asp.net web 应用程序登录页面,它具有 asp.net 的内置身份验证和由 asp.net 的登录控件创建的 login.aspx 页面。现在我在注销时遇到问题。
当用户按下“注销”时,链接将重定向到“Login.aspx”页面。但是,当用户从浏览器中按下“返回”按钮时,用户“登录”到我想要避免的应用程序的页面,它必须要求输入登录凭据。
帮助赞赏..! 提前谢谢..!
【问题讨论】:
【参考方案1】:你可以试试
protected void btnLogout_Click(object sender, EventArgs e)
Session.RemoveAll();
Session.Abandon();
Response.Redirect("LoginPage.aspx");
【讨论】:
感谢您的回复..!但是,这但是不起作用...当他再次按下浏览器的“返回”按钮时,他登录到了网页。【参考方案2】:使用以下代码:
Session.RemoveAll();
FormsAuthentication.SignOut();
FormsAuthentication.RedirectToLoginPage();
【讨论】:
【参考方案3】:如果您使用的是MasterPage
,那么在您的MasterPage 的代码隐藏 中,您可以这样做
Response.ExpiresAbsolute = DateTime.Now.AddDays(-1d);
Response.Expires = -1500;
Response.CacheControl = "no-cache";
也不要忘记在注销时清除会话。
【讨论】:
以上是关于在 ASP.NET 中注销时如何杀死用户的会话的主要内容,如果未能解决你的问题,请参考以下文章