Java 拦截器重定向无限循环/重定向次数过多报错 的解决方案

public class CheckPortInterceptor implements HandlerInterceptor {
	@Override
	public boolean preHandle(HttpServletRequest request,
			HttpServletResponse response, Object handler) throws Exception {
		 String urlString = request.getRequestURI();
		 //Login.do 这个判断必须要添加不然会无限循环
		 if(urlString.endsWith("Login.do")){ 
			  boolean judgeIsMoblie = CheckMobile.JudgeIsMoblie(request);
			  if(judgeIsMoblie==true){ //手机的请求
				   String path = request.getContextPath();
		           String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";
		           response.sendRedirect(basePath+"tbInspectionController/AppList.do"); 
		           return false;
				}else{
				   return true;
				}   
	      }else 
	      {return true;}
	 
	}

	@Override
	public void postHandle(HttpServletRequest request,
			HttpServletResponse response, Object handler,
			ModelAndView modelAndView) throws Exception {
 
    	 
	}

	@Override
	public void afterCompletion(HttpServletRequest request,
			HttpServletResponse response, Object handler, Exception ex)
			throws Exception {

		 
	}
}

 

你可能感兴趣的:(Java)