2009-04-04 4 views
3

세션에 의존하는 Classic ASP 응용 프로그램이 있습니다. 사용자가 화면을 유휴 상태로두고 양식 게시 나 다른 작업을 실행하면 세션이 만료되었는지 여부를 알고 싶습니다.동적으로 세션 만료를 감지하는 기본 ASP 응용 프로그램을 디자인하십시오.

현재 각 페이지의 세션을 확인하여 시간 초과 여부를 확인하지만 은행에서 수행하는 작업을 수행하고 로그인으로 리디렉션하는 세션을 시간 초과하는 더 나은 역동적 인 JavaScript 방식이 있습니까?

답변

2

페이지의 onload 이벤트 중에 타이머를 시작한 다음 N 초 후에 페이지를 리디렉션하십시오.

  • 타이머의 경우 window.setTimeout 기능을 사용하십시오.
  • 리디렉션의 경우 window.location 값을 설정하십시오.

재사용 예 :

<head> 
<script type="text/javascript"> 
<!-- 
function redirect(url) { 
    window.location = url; 
} 
function beginSessionTimer() { 
    // 30000ms = 30s 
    window.setTimeout(redirect, 30000, 
        "http://www.yoursite.com/login.asp?session=clear"); 
} 
//--> 
</script> 
</head> 
<body onload='beginSessionTimer();'> 
</body> 

빠른 앤 더러운 인라인 함수/w 예 : 페이지가 수행하는 경우 AJAX 호출 어떤 세션이 살아 유지하는 것이

<body onload='window.setTimeout(function(){ 
window.location="http://www.yoursite.com/login.asp?session=clear";}, 
30000);'> 

주 따라서 clearTimeout 메서드 (setTimeout에 대한 새 호출과 결합하여)를 사용하여 타이머를 재설정해야합니다. clearTimeout에 대한 자세한 내용은 click here에서 Mozilla의 훌륭한 설명서를 참조하십시오.

+0

이것은 훌륭합니다! 데이빗 감사합니다! 나는 리다이렉트를 팝업 메시지로 바꾸었고 훌륭하게 작동했다! –

관련 문제