我有一个用户提示我的 Intranet 网页经常超时。在寻找解决方案时,我发现了这篇文章:
http://forums.asp.net/t/152925.aspx?PageIndex=1
发帖人建议拦截重定向到登录页面的地方,将数据提交到数据库,然后重新授权用户(在他们不知情的情况下)或重定向到登录页面。我的目标是避免用户在表单中输入数据,走开,然后回来提交,只是被告知他们必须再次登录的情况(这很好,如果数据仍然存在并且用户被正确发送回到原来的网络表单)。
有谁知道我如何在我的应用程序的特定页面(不是所有页面)上完成此操作?
请您参考如下方法:
这不一定是微不足道的,但您可以添加一个 ajax 组件,偶尔调用页面以保持 session 有效。这样您就可以延长任何特定页面的 session ,而不会影响整个应用程序。
编辑
如果真的想让session过期,但保留表单数据,可以实现
protected void Application_PostAuthenticateRequest (object sender, EventArgs e)
global.asax.cs 文件中的事件处理程序。这是在表单例份验证重定向发生之前调用的,此时表单数据可供您的应用程序使用,因此您可以将其保存到任何必要的媒体,直到您的用户再次通过身份验证。此外,如果您检查
((HttpApplication)sender).Request.Path
属性它会告诉你请求了哪个页面。
