asp.net – 如何在会话超时或结束时注销用户
发布时间:2020-12-15 22:45:23 所属栏目:asp.Net 来源:网络整理
导读:当会话结束或到期时,注销用户的最佳方式是什么? 感谢任何帮助. 解决方法 它真的取决于您要查找的所需功能.我要假设你使用FormsAuthentication. 您需要关注两个独立的事项:会话和FormsAuthentication cookie.除非我错了,否则这两个都有不同的超时. 如果您遇
当会话结束或到期时,注销用户的最佳方式是什么?
感谢任何帮助. 解决方法
它真的取决于您要查找的所需功能.我要假设你使用FormsAuthentication.
您需要关注两个独立的事项:会话和FormsAuthentication cookie.除非我错了,否则这两个都有不同的超时. 如果您遇到的问题是会话超时,但用户仍然进行身份验证,则可以尝试以下组合: 1:确保身份验证cookie与会话具有相同的超时值: <authentication mode="Forms"><forms ... timeout="20" ... ><authentication> <sessionState ... timeout="20" ... /> 2:在您的Page_Load事件中,检查会话是否超时: if (context.Session != null && Context.Session.IsNewSession == true && Page.Request.Headers["Cookie"] != null && Page.Request.Headers["Cookie"].IndexOf("ASP.NET_SessionId") >= 0) { // session has timed out,log out the user if (Page.Request.IsAuthenticated) { FormsAuthentication.SignOut(); } // redirect to timeout page Page.Response.Redirect("/Timeout.aspx"); } (有关检测会话超时的信息,请参见http://www.eggheadcafe.com/articles/20051228.asp) 如果您想要更愉悦的用户体验,您可以使用javascript在X分钟后启动某种模式的UI弹出窗口.这个弹出窗口将简单地允许用户启动按钮单击,这将触发服务器上的AJAX回发,从而扩展其身份验证和会话cookie,而无需重新加载页面.我从来没有实现过,但是看, this guy made an ASP.NET AJAX control ! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – ASP.NET MVC日历
- asp.net – 用JavaScript计算时间间隔
- asp.net – Visual Studio 2015的项目模板
- 将Instant Messaging集成到ASP.NET应用程序中
- asp.net-mvc – 如何将存储库传递给ASP.NET MVC中的authori
- IIS是否记录请求标头信息?如果是的话,在哪里?
- asp.net-mvc – 在图层之间复制模型
- asp.net-mvc – System.Data.SqlClient.SqlException:无效
- asp.net-mvc – MVC中的模型含义
- asp.net-mvc-3 – MVC3只读文本框但值必须POST
推荐文章
站长推荐
- [.Net码农]ASP.NET MVC 之 View 测试
- asp.net-mvc – 是否可以模拟/伪造扩展方法?
- asp.net-mvc-3 – 在F#中的ViewBag动态对象上设置
- asp.net – 为什么IFormFile显示为null,我该如何
- asp.net-mvc-4 – 在哪里可以找到WebMatrix.WebD
- ASP.NET CodeFile,CodeBehind和Inherits
- asp.net-core – 如何将IHttpContextAccessor注入
- 为什么ASP.NET MVC 3没有正确验证我的浮动?
- 如何将我的模型数据(列表)映射到另一个viewmodel
- 如何在IIS 7上的经典ASP中启用大型文件的上传?
热点阅读