지난 시간에는 클라이언트에게 보여주는 데이터를 제어하는 필터링에 대해 배웠다.
======================================4-8. URI를 통한 버전 관리
이제 생성한 사용자관리 API의 버전 관리를 알아보자.
ex) 카카오의 공개API 도 버전관리를 한다.
중요 !!! 객체 값 옮길 때 BeanUtils.copyProperties 쓰면 편하다. 1번파라미터 -> 2번파라미터
두 객체에서 공통적인 필드 있으면 카피.
User2로 받아와서 그냥 user를 userv2로 다 바꿔줌. 필터 이름도 UserInfoV2라서 바꿔주.
v2의 개별 사용자 조회를 만든다.
============================== 4-9 Request Parameter와 Header를 이용한 API Version 관리
1. Request Parameter를 이용한 버전관리
위의 v1, v2를 이렇게 바꿔준다. 뒤에 파라미터 오므로 / 로 끝낸다.
버전별로 잘 뜬다.
2. Request Header 를 이용한 API 버전관리
X-API-VERSION은 임의지정.
3. MIME type으로 API 버전관리
MIME : 이메일과 함께 전송되는 텍스트 문자를 변환하여 이메일 서버에 전달하기 위한 방법.
vnd.company.appv1+json 은 임의 지정.
# 정리
사용자에게 버전 정보 가이드 해줘야함.
1. URI
2. 쿼리 파라미터
3. 헤더
4. MIME type
1,2 : 일반 웹브라우저에서도 변경가능
3,4 : 일반 웹브라우저에서는 변경 불가능 ( 실행 X ) -> 포스트맨 이용.
'Java, Spring > Spring Boot를 이용한 RESTful Web Services 개발' 카테고리의 다른 글
5-7 Hal browser, spring security ~ 5-8 (0) | 2022.08.24 |
---|---|
5-1 ~ 5-6. 스프링부트가 제공하는 API관련 유틸리티 ( HATEOAS, Swagger, Actuator) (0) | 2022.08.24 |
4-5 ~ 4-7. @JsonIgnore, @JsonFilter (0) | 2022.08.23 |
4-1 ~ 4-4 validation, 다국어처리, xml반환 (0) | 2022.08.22 |
3.5 ~ 3.7 (0) | 2022.08.22 |