728x90
반응형

2025/11/13 2

[Spring] DELETE 메소드에 RequestBody를 지양해야 하는 이유

글 삭제시 유저가 입력한 패스워드와 작성자의 패스워드 일치시 삭제를 구현해야했는데 강의대로 따라가다보니 @DeleteMapping과 @RequestBody를 같이사용하게 되었다.피드백HTTP Method중 GET과 DELETE에서 RequestBody의 사용은 지양해야 합니다. 지금은 HTTP Method를 정의한 문서에서 GET과 DELETE에서 RequestBody(요청 본문)의 의미가 정의되어있지 않기 때문입니다. 다시말해 요청본문이 있어도 그것이 어떤역할을 해야할지 명확하지 않아 무시되거나 거부될 수 있습니다. 실무적인 관점에서는 사용하는 라이브러리/프레임워크/버전에 따라서 DELETE에 요청본문을 허용하지 않는 것들이 있습니다.또한 일반적으로 DELETE에 요청본문을 넣지 않는다는 룰이 있어 다..

Dev./Spring 2025.11.13

[Spring] Filter

Filter란?Filter는 Spring 전용 기술이 아닌, 자바 서블릿(Java Servlet) 표준 스펙에서 제공하는 기능이다.즉, Spring이 등장하기 전부터 톰캣(Tomcat), 제티(Jetty) 같은 서블릿 컨테이너 수준에서요청과 응답을 가장 먼저 가로채어 처리하는 구조다.Spring Boot는 이런 Servlet Filter를 내부적으로 자동 등록하고Spring 애플리케이션의 맨 앞단(DispatcherServlet 이전) 에서 실행되게 해준다.동작 구조클라이언트 요청 ↓[Filter] ─── Servlet 레벨 (보안, 인코딩, 인증) ↓DispatcherServlet ─── Spring MVC 진입점 ↓[Interceptor] ─── Spring 레벨 (로깅, 권한 검증,..

Dev./Spring 2025.11.13
728x90
반응형