검색 기능 api method

0

TIL

목록 보기
150/183

검색 api를 구현하던 중 @GetMapping@PostMapping 중 어떤 메소드를 사용하는 것이 올바른지에 대해 고민이 생겼다.

분명 검색어인 keyword를 입력해서 접근하지만 주 목적은 검색된 결과이기 때문에 @GetMapping이 적절하다 생각되었지만 확실한 근거를 알기위해 알아보기로 하였다.

주로 우리가 알고있는 검색 기능에 대해서는 검색어인 keyword와 검색 타입(예를들어 게시글을 검색한다고 한다면 작성자, 글 제목, 글 내용 등)이기 때문에 @GetMapping을 사용해서 @RequestParam 어노테이션으로 파라미터 값을 가져와서 사용한다.

	@GetMapping
	public ResponseDto searchData(@RequestParam String keyword) {
		// ...
    }

반대로 특정 상황에서 검색에 필요한 데이터가 많을 경우에는 RequestBody가 필요하기 때문에 @PostMapping, @RequestBody어노테이션을 사용해 RequestDto로 데이터들을 가져와서 사용한다.

	@PostMapping
	public ResponseDto searchData(@RequestBody RequestDto requestDto) {
		// ...
    }

구글링을 통해 검색 기능은 @GetMapping으로 사용한다는 것을 알았지만 필요한 상황에 따라서 @PostMapping 또한 사용 가능하다는 것을 알게되었다.

0개의 댓글

관련 채용 정보