Session.Timeout
仅返回Web.Config
中的静态值。但我希望得到一个值,直到当前会话到期还剩多少秒。我该怎么办?
我尝试从JavaScript中检索Session.Timeout
。
setInterval('checkSession()', 100);
而checkSession()
是:
function checkSession() {
console.log('Timeout: <%= Session.Timeout %>');
}
该页面会在几分钟内吐出当前的Session.Timeout
值,并且只能证明Session.Timeout
是我Web.Config
中设置的静态值,而不是一个显示我有多少的动态值分钟还剩下。
答案 0 :(得分:2)
我认为,只有在大多数在线银行网站上对客户端进行此控制才有意义。
<script>
var timeLeft = <%= Session.Timeout * 60 %>; // seconds
self.setInterval(checkTime, 1000);
function checkTime()
{
timeLeft--;
if (timeLeft < 120) // 2 minutes left
{
alert("2 minutes left.");
// well you can refresh or close the page
document.frames["iframeSession"].location.reload();
}
}
</script>
答案 1 :(得分:0)
如果您想在服务器上执行此操作(这没有多大意义),则它等于Session.Timeout
,因为您正在会话中主动处理请求。
要在客户端执行此操作,只需将Session.Timeout
值传递给页面并使用javascript处理它(记录呈现页面的时间并将当前时间与其进行比较)。