[Spring] REST API를 구성하는 @GetMapping, @PostMapping (2)

개(계)기장·2025년 6월 27일

Spring

목록 보기
5/6

저번 글에서는 REST API와 HTTP 메서드 매핑에 대해 정리했었다.
이번에는 프로젝트를 하면서 실제로 겪었던 실수, GET 요청에 @RequestBody를 썼다가 에러가 난 이유를 중심으로 이야기해보려 한다.

📍@RequestBody

HTTP 요청의 body(본문)에 담긴 JSON 데이터를 자바 객체로 변환해 그대로 컨트롤러에 전달하는 어노테이션이다.
@RequestBody 이외에도 @RequestParam@RequestPart등이 있는데, 이 둘의 차이가 궁금하다면 아래 글을 참고하면 된다👇🏻
@RequestParam vs @ReqeustPart 차이점


에러코드(Swagger 사용)

  • 위 오류는@GetMapping이 기본적으로 @RequestBody를 지원하지 않는다는 오류이다.

💡 @GetMapping에서 @RequestBody를 사용할 수 없는 이유

🎯 HTTP GET의 특징

  • GET 요청은 정보를 조회할 때 사용된다.
  • HTTP 표준상 GET 요청은 body를 포함하지 않는 것이 일반적인 규칙이다.

결론

GET 요청에서 body가 없기 때문에 @RequestBody를 통해 데이터를 바인딩할 수 없다.


💡 마무리

프로젝트를 하면서 겪은 오류나 헷갈렸던 부분들을 하나씩 정리해서 블로그에 기록 중입니다. 글에 부족한 부분이 있을 수도 있는데, 혹시 읽다가 피드백이나 조언해주실 점이 있다면 언제든지 알려주시면 감사하겠습니다 😊

profile
배우고 느낀 걸 솔직하게 적는 개기(계기, 契機)장 — 개발 일기장(개기장)

0개의 댓글