Search

[스프링 게시판] 비로그인 사용자용 인터셉터

@3/20/2023

로그인된 사용자가 URL을 통해 비로그인 사용자용 요청에 접근하지 못하도록 함

로그인 화면 및 회원가입 화면에 접근 차단 Intercaptor
public class GuestInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws IOException { HttpSession session = request.getSession(false); if (session != null && session.getAttribute("loginUser") != null) { response.sendRedirect("/"); return false; } return true; } }
Java
복사
설정 클래스에 추가
@Configuration public class WebConfig implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(new LoginInterceptor()) .order(0) .addPathPatterns("/**") .excludePathPatterns("/", "/posts", "/users/login", "/users/logout", "/users/new", "/css/**", "/*.ico", "/error", "/assets/**"); registry.addInterceptor(new LoginButtonsInterceptor()) .order(1) .addPathPatterns("/**"); registry.addInterceptor(new GuestInterceptor()) .order(2) .addPathPatterns("/users/login", "/users/new"); } }
Java
복사

관련 커밋

ddcf445f90daa3d43194c4a41a9a89368fe1deab
commit