2025-03-25

在WEB應用中,一般通過監控SESSION來判斷用戶是否登錄、或是否發呆時間過長。如果SESSION過期或用戶未登錄,用戶再次向服務器請求資源的時候,就跳轉(重定向)到登錄頁面。
  可實際上,用戶在請求資源的時候,頁面的狀態可能有多種:帶框架的頁面、window.open()函數打開的窗口。這時候跳轉(重定向)到登錄頁面就會有問題。其實可以拿過一個簡單的腳本來解決這個問題:
 
<script type="text/javascript"> 
    if(window.opener){ 
        //若是彈出的打開窗口,刷新父窗口,就關閉本窗口 
        window.open.reload(); 
        window.close(); 
    } 
    else{ 
        var topwin = window.parent; 
        //找到頂層窗口 
        while(topwin!= topwin.parent){ 
            topwin = topwin.parent; 
        } 
        if(window.parent!=window) 
            topwin.location.href= 
                "${pageContext.request.contextPath}/index.jsp"; 
    } 
</script> 
 
作者“ERDP技術架構”

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *