在用户注销之前,保持asp.net或asp.net mvc会话处于活动状态的最佳方法是什么?
*即使在浏览器或计算机重新启动后,用户也应该能够激活会话...
换句话说,实现REMEMBER ME的最佳方法是什么......
答案 0 :(得分:2)
您可以将超时设置设置为更高的值,但是您无法区分由超时引起的session_end或结束其会话的用户。
您的问题的解决方案可能是在Global.asax的session_start方法中恢复用户的会话。
答案 1 :(得分:2)
您可以使用成员资格提供程序实现此目的,并在用户浏览器中设置cookie文件并检查其身份验证
答案 2 :(得分:2)
另一个想法是每隔一分钟通过iframe / ajax / image标签在后台发送保持活动请求。
答案 3 :(得分:1)
能够执行此操作的最佳方法是在您的身份验证策略中使用Cookie来指示用户已登录。将您的网站设置为使用表单身份验证,并设置相关属性以使用Cookie。它可以在您的Web.config文件中完成:
<authentication mode="Forms">
<forms loginUrl="Login.aspx"
protection="All"
timeout="30"
name="AppNameCookie"
path="/FormsAuth"
requireSSL="false"
slidingExpiration="true"
defaultUrl="default.aspx"
cookieless="UseCookies"
enableCrossAppRedirects="false"/>
</authentication>
欲了解更多信息,请阅读:How To: Use Membership in ASP.NET 2.0