使会话永远保持活动为stackoverflow

时间:2009-11-19 15:43:52

标签: asp.net-mvc session keep-alive

除非用户点击我的asp.net mvc(C#)应用程序中的注销,否则我需要保持会话的实时。

当用户关闭浏览器并再次打开时,会话应继续使用值。

我正在尝试像在stackoverflow中那样实现。

有任何想法/建议吗?

5 个答案:

答案 0 :(得分:9)

你说你希望让会话保持活跃状态​​“就像在StackOverflow中一样。”... StackOverflow与大多数安全站点一样,不会无限期地保持会话存活。它使用cookie来“记住”登录。

答案 1 :(得分:2)

如果您使用FormsAuthentication,则可以执行以下操作:

FormsAuthentication.SetAuthCookie("userName", true); 

这将创建一个在不同浏览器会话中持久化的cookie,并将实现您所需的目标。

答案 2 :(得分:0)

如果您想要记住'状态',即使(因为会话/会话cookie过期)您强迫您的用户再次登录。您需要保留会话数据。也许您的网络容器可以为您做到这一点。

答案 3 :(得分:-1)

首先,如果您想创建多会话但临时数据,您应该查看ASP.NET用户配置文件。

如果您希望跨会话持久登录,请查看处理记住用户的FormsAuthentication位。

如果你需要在没有永久设置超时的情况下无限期地保持会话存活(因此在某些情况下由服务器管理员触发谋杀),一个巧妙的技巧是设置一个Ajax“heartbeat”来ping回服务器,而浏览器是打开并有效地做“保持这个会话活着”的技巧。

答案 4 :(得分:-3)

浏览器关闭时会话将丢失