[이전 게시글]
[배경]
인터셉터로 로그인 체크하여 고정된 페이지가 아닌, user가 요청한 페이지로 이동하는 것까지는 좋았으나,
파라미터가 유실되는 문제가 확인되었다.
[의도]
파라미터까지 가지고와서 정확한 요청 페이지를 보여주자.
[원리]
request.getRequestURL()을 통해 URL을 가지고 온 것처럼, 파라미터도 가지고 와야 한다.
이때 사용하는 request 객체는 아래와 같다.
- request.getQueryString()
✓ 예제 실습
After 로그인 Controller
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
HttpSession session = request.getSession();
if(session.getAttribute("sessionId")==null) {
System.out.println("[INTERCEPTOR_전] sessionId 확인 실패");
//기존 내용에서 request.getQueryString()이 추가됨
if(request.getQueryString()!=null) {
response.sendRedirect("/loginView?requestURL="+request.getRequestURL()+"?"+request.getQueryString());
}else {
response.sendRedirect("/loginView?requestURL="+request.getRequestURL());
}
return false;
}
System.out.println("[INTERCEPTOR_전] sessionId 확인 성공");
return true;
}
정말 간단하게 해결할 수 있는 부분이었는데, 생각보다 나와 맞는 자료가 많지 않아 애 먹은 부분이었다..끗
'Project > 2022.02_게시판 만들기' 카테고리의 다른 글
[스프링] 프로젝트 - 게시판 페이징 처리(댓글 편) (0) | 2022.03.08 |
---|---|
프로젝트 코드리뷰 (0) | 2022.03.07 |
[스프링] 로그인 후 원래 요청한 페이지로 이동하기-1 (0) | 2022.03.07 |
[Javascript] 입력 검색어 제안 - datalist (0) | 2022.02.22 |
[스프링] 프로젝트 - 게시판 페이징 처리 (0) | 2022.02.19 |