localhost 重定向次數過多

yinghualeihenmei發表於2024-08-25

在完成javaweb作業時出現了錯誤

初始頁面只有兩個功能, 但是無論是點選登入還是註冊,都會跳轉到login.jsp頁面

從網上找到的答案是程式碼陷入死迴圈,因為總是跳轉到login.jsp, 所以我檢視了所有servlet類中跳轉到login.jsp頁面的程式碼,邏輯上並沒有問題;然後我又檢視了過濾器以及web.xml檔案, 發現我設定的不需要過濾的檔案路徑之間使用','和' '隔開的,但是在過濾器中獲取這些路徑使用的分隔符是',',刪去"/index.jsp, /login.jsp, /register.jsp, /LoginServlet, /AddUserServlet"之間的空格就行了。
web.xml

<!--不需要攔截的URL列表;注意配置時不要攔截後臺對使用者和密碼判斷的頁面,否則可能登入不進主介面-->
    <context-param>
      <param-name>uncheckedUrls</param-name>
      <param-value>/index.jsp, /login.jsp, /register.jsp, /LoginServlet, /AddUserServlet</param-value>
    </context-param>

filter程式碼

//2、檢測1中獲取的servletPath是否為不需要檢測到URL中的一個。若是,放行
        List<String> urls = Arrays.asList(uncheckedUrls.split(","));
        for(String url : urls){
            if(servletPath.contains(url)){
                filterChain.doFilter(httpServletRequest, httpServletResponse);
                return;
            }
        }

相關文章