2013-06-05 78 views
0

現在我正在使用與Spring集成的Shiro來保護我的項目。主要根據角色過濾請求。現在我遇到了一個問題。例如,在我登錄了一段時間之後,會話就結束了,在這個時候,當我點擊一些向後端發送請求的按鈕時,由於會話結束,請求被shiro攔截。這就是問題 存在的地方。即使四郎給出了一個選擇,你可以配置一些東西一樣如何從shiro身份驗證返回的響應中獲取HTTP狀態

<property name="unauthorizedUrl" value="/unauthorized.jsp"/> 

到該請求是否是未經授權的指定網址。我認爲迴應shiro返回應包括status.Unauthorized或401錯誤。我想要做的是在每個ajax請求中處理這個錯誤。但我不知道在ajax的回調方法中檢查狀態。有人可以提供一些建議嗎?由於

回答

0

你可以像這樣的方法添加到您的SecurityFilters:

def onNotAuthenticated(subject, filter) { 
    def redirectToLoginPage = true 
    if (filter.request.xhr) { 
     filter.response.sendError 403 
     redirectToLoginPage = false 
    } 
    redirectToLoginPage 
} 
相關問題