我需要保持会话处于活动状态,除非用户在我的 asp.net mvc(C#) 应用程序中单击注销。
当用户关闭浏览器并再次打开时,会话应该继续使用这些值。
我正在尝试在stackoverflow中实现。
有什么想法/建议吗?
我需要保持会话处于活动状态,除非用户在我的 asp.net mvc(C#) 应用程序中单击注销。
当用户关闭浏览器并再次打开时,会话应该继续使用这些值。
我正在尝试在stackoverflow中实现。
有什么想法/建议吗?
您说您希望“像在 StackOverflow 中一样”保持会话活动。... StackOverflow 与大多数安全站点一样,不会无限期地保持会话活动。它使用 cookie 来“记住”登录。
如果您使用 FormsAuthentication,您可以执行以下操作:
FormsAuthentication.SetAuthCookie("userName", true);
这将创建一个在不同浏览器会话中持续存在的 cookie,并将实现您正在寻找的内容。
如果您想记住“状态”,即使(由于会话/会话 cookie 过期)您正在强制您的用户再次登录。您需要保留会话数据。也许您的网络容器可以为您做到这一点。
首先,如果您想制作多会话但临时数据,您可能应该查看 ASP.NET 用户配置文件。
如果您想跨会话保持登录,请查看处理记住用户的 FormsAuthentication 位。
如果您需要在不设置超时的情况下无限期地保持会话(因此在某些情况下会触发服务器管理员的谋杀),一个巧妙的技巧是设置 Ajax“心跳”以在浏览器打开且有效时 ping 回服务器做一个“保持这个会话活着”的把戏。
浏览器关闭时会话将丢失