如何防止会话超时

Mic*_*ard 7 c# asp.net cookies session session-state

我知道这对你们大多数人来说可能是一个简单的问题.但我的问题是我的服务器主机每分钟都清空会话池.那么如何让我的用户保持登录时间超过一分钟?

我听说我可以使用SessionStates,但是我没有在网上找到任何像我这样的新手很容易使用的指南.

我也听说过用饼干做这件事.怎么样?

我正在使用C#和.Net

Ste*_*ens 13

这是一种方式:

http://weblogs.asp.net/stevewellens/archive/2009/06/09/ah-ah-ah-ah-staying-alive-staying-alive.aspx

有时您希望您的网页"保持活力".也就是说,如果用户填写了复杂的表单,则不希望会话在完成之前超时.用户可能非常生气并且理所当然:你甚至可能会被大吼大叫!

这不仅仅是将会话超时增加到非常大的值.如果这样做,在访问者离开网站后,会话将在服务器内存中保持活动数小时.增加会话超时是一种解决方案......但不一定是一个好的解决方案.

目标是只要网页在客户端计算机上打开,会话就应该保持活动状态...即使没有回发来重置会话计时器.当网页关闭时,会话应该正常超时.

我为此实现了一个解决方案:客户端将以小于会话超时的间隔"ping"服务器,这会重置会话计时器.这被称为Heartbeat设计模式(我找不到一个像样的网站/页面链接到)...

  • +1不仅因为它是一个很好的解决方案,而且还适用于时髦的标题. (11认同)