인프런 커뮤니티 질문&답변

kangsy763님의 프로필 이미지
kangsy763

작성한 질문수

[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발

Version 관리 - Paramter와 Header를 이용한 버전관리

params 값으로 구별하는 부분에서

작성

·

469

0

value="/users/{id}/", params="version=1"

해당 부분에서 만약에 param 값이 여러개가 들어오게 되었을 때 가장 앞의 param 값으로 매핑이 되는 것을 확인할 수 있었는데요, 그렇다면 2개 이상의 param 값을 조건으로 하여 @GetMapping 으로 처리하고 싶을 때에는 어떻게 처리하는지 궁금합니다.

답변 1

6

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다. 

GetMapping 어노테이션에서 params는 String[]로 선언되어 있어, 복수의 문자열을 지정할 수 있습니다. 

만약, Controller에 메소드를 

@GetMapping(value = "/admin/users/{id}/", params = {"version=1","api=v2"})

라고 선언 하였을 때, 아래와 같이 호출하면, 400 Bad Request 오류가 발생하며, 

http://localhost:8088/admin/users/2/?version=1

http://localhost:8088/admin/users/2/?version=1&api=v2

라고 입력해야 정상적으로 실행 됩니다. 

감사합니다. 

kangsy763님의 프로필 이미지
kangsy763

작성한 질문수

질문하기