经典页面由 4 个框架集组成。如果所有 4 个框架集都处于非活动状态,则登录页面超时。如何为带有框架集的经典 asp 页面设置超时。
cybernot
问问题
2176 次
2 回答
1
默认会话超时为 20 分钟。您可以通过添加以下代码来更改它
Session.Timeout (= intMinutes)
ex: Session.Timeout= 10
在您的 asp 页面中。
于 2009-08-17T09:40:27.343 回答
0
您可以在您的页面中有一些 JS 倒计时到您的会话超时时间(有关如何设置,请参阅 Shobans 回答)。然后,如果 JS 超时(即达到其会话超时),那么您可以将它们(客户端)重定向到您的登录页面,并在您这样做时退出框架。这样的事情应该这样做:
<script type="text/javascript">
// Get the current server side timeout (times 1000 to convert it into JS milliseconds
var timeout = <%= Session.TimeOut * 1000 %>;
// This is the function that does the framebusting and redirecting to your login page
function GoToLogin() {
top.location.replace( "yourloginpage.asp" );
}
// Set it up to run when the timeout expires
setTimeout( GoToLogin, timeout );
</script>
如果您的用户做任何事情来重新加载页面,那么您的计时器就会重置,很好。不过不要把它放在你所有的框架中,你只需要在你的主要框架中,你不希望它在一个导航框架中,它可能不会采取任何行动,你总是会超时!
一个补充可能是让页面自己刷新,如果它超时,那么服务器端代码可以将用户重定向到登录页面(虽然这会出现在框架中,所以你的登录页面无论如何都需要一个框架破坏者这将使用上面的 top.location 技巧)。
于 2009-08-17T18:22:29.487 回答