• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

필터사용

22.08.13 23:57 작성 조회수 248

1

 
(인터셉터 대신)
특별히 필터를 사용해야 하는 경우는 어떤경우가 있을까요?
 

답변 1

답변을 작성해보세요.

1

OMG님의 프로필

OMG

2022.08.14

안녕하세요. 기팝님, 공식 서포터즈 OMG입니다.

가장 큰 차이로는 스프링이 제공하는 기술이냐 아니냐의 차이가 있을 것 같네요.

스프링으로의 개발 환경이 아니라면 필터를 사용해야합니다.

추가적인 내용은 아래 잘 정리된 글을 참고해주세요.

https://mangkyu.tistory.com/173


감사합니다.

 
기팝님의 프로필

기팝

질문자

2022.08.15

스프링 개발 환경이면 웬만하면 필터대신 인터셉터를 사용한다는거가요 ?

OMG님의 프로필

OMG

2022.08.15

강의에서 위와 같은 설명이 있는데요, 특별한 문제가 없다면 인터셉터 사용을 권장하시는데 특별한 문제로 염두하신게 스프링 사용 환경을 말씀하시는 것일수도 있고 아래와 같은 상황을 말씀하신 것일 수도 있을 것 같습니다.

대표적으로 보안 공통 작업이 있다. 필터는 인터셉터보다 앞단에서 동작하므로 전역적으로 해야하는 보안 검사(XSS 방어 등)를 하여 올바른 요청이 아닐 경우 차단을 할 수 있다. 그러면 스프링 컨테이너까지 요청이 전달되지 못하고 차단되므로 안정성을 더욱 높일 수 있다.

또한 필터는 이미지나 데이터의 압축이나 문자열 인코딩과 같이 웹 애플리케이션에 전반적으로 사용되는 기능을 구현하기에 적당하다. Filter는 다음 체인으로 넘기는 ServletRequest/ServletResponse 객체를 조작할 수 있다는 점에서 Interceptor보다 훨씬 강력한 기술이다.

 

인터셉터를 권장하시니 인터셉터를 사용하다 , 인터셉터로 해결이 불가능한 상황이 올 때 필터 사용을 고려해보면 좋을 것 같습니다.

기팝님의 프로필

기팝

질문자

2022.08.15

감사합니다