[Interceptor] Spring Boot에서 Interceptor적용했는데, 무한 리다이렉트될때.. ≤ 스프링_STS ≥

출처 : http://enosent.tistory.com/trackback/34



login을 하면 세션을 저장하고, 세션이 있을때에만 기타 다른 페이지에서 접근이 가능하고, 세션이 없다면 로그인페이지로 리다이렉트 시켜놨는데..

크롬에서 에러가 빡 뜬다. ERR_TOO_MANY_REDIRECTS


디버그 찍어보니, interceptor에서 prehandle의 부분이 무한루프식으로 접근된다.;;;;

login페이지만 세션비교하는걸 제외할까 하다가, 인터넷검색해서 나오는건 전부 스프링 관련이다. 스프링에 web.xml 이 있지만, spring boot에는 없다는거...ㅠㅠㅠ

한참 찾다가, 우연히 들어간 페이지에서 더이상 무한루프가 돌지 않도록 하는 방법을 발견했다 !!

오 지니어스, 베리베리땡큐

LoginUser는 내가 세션이 저장하기위해 생성한 Custom Object이다.  중요한것은 request.getRequestURI부분을 대조해서 true/false로 념겨주는 부분 !!!!

HttpSession session =  request.getSession (true);
LoginUser user = (LoginUser) session.getAttribute("loginUser");

if("/login".equals(request.getRequestURI())){
return true;
}
if(null == user){
response.sendRedirect("/login");
return false;
}
return true;

덧글

  • ubean 2016/09/28 23:33 # 삭제 답글

    한참 찾고 있었는데.. 이거 들어가서 고칠 수 있는거죠? ㅠㅠ 알려주세요
댓글 입력 영역