是否有可能看到asp.net会话的运行时间?

时间:2010-05-22 03:49:01

标签: asp.net session time

我有一个会话变量,默认时间设置为20分钟...是否可以看到该会话变量的运行时间(即)说14分35秒..

1 个答案:

答案 0 :(得分:1)

如果您已经处于代码隐藏状态,则会话将始终更新为指定的超时,因为请求已处理完毕。对于FormsAuthentication票证,在某种程度上也是如此,具体取决于滑动到期设置。

审核会话/票证超时的唯一有效用例是在AJAX场景中。

审核会话和/或表单票证生命周期是一个棘手的主张,因为您必须前往服务器访问httpOnly cookie以确定超时,在大多数情况下,这会导致刷新cookie /票证捕获22导致永无止境的会话。

我使用自定义HttpModule开发了此问题的解决方案,该HttpModule公开了2个虚拟端点,这些端点返回表示会话/故障单剩余寿命的值。您可以从javascript或托管代码访问这些端点。

在此处查找实施和示例解决方案:AsynchronousSessionAuditor