이번에는 REST API 의 response 정보에 부가적인 정보를 추가해서 제공하는 서비스인 HAL Browser에 대해 알아보려고 한다.
HAL Browser는 Hypertext Application Language의 약자이다.
Hypertext를 가지고 application 정보를 부가적으로 부여하는 것을 의미한다.
HAL은 API 리소스들 사이에서 쉽게 일관적인 hyperlink를 제공하는 방식이고, API 설계시 API 끼리 쉽게 검색이 가능하다는 장점이 있다.
response 메시지에 적용하면 메시지가 어떤 포맷이든지 메타정보를 hyperlink형식으로 간단하게 포함할 수 있다.
그림을 보면 우리가 제공하고자하는 정보들을 Links 형태로 추가해서 제공하는 것을 볼 수 있다.
resource 작업은 우리가 개발해왔던 유저정보나 변경, 추가, 등에 대한 작업을 말한다.
HAL 라이브러리를 사용하기 위해서는 pom.xml 에 추가해서 사용하면 된다.
<!--HAL Browser-->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-rest-hal-browser</artifactId>
<version>3.3.6.RELEASE</version>
</dependency>
dependency 를 추가하고 서버를 재기동한 후
http://localhost:8088/browser/index.html#/ 로 접속하면 다음과 같은 화면을 볼 수 있다.
http://localhost:8088/actuator/
Explorer 영역에 actuator 를 확인해보기 위해 입력해보면,
다음과 같이 확인해 볼 수 있다.
http://localhost:8088/actuator/metrics/jvm.memory.max
Links 의 하단에 있는 metrix의 jvm-memory-max 를 검색해보면
다음과 같이 정보들을 볼 수 있다.
이렇게 HAL의 장점은 HATEOAS 기능을 사용하여 추가정보도 확인 할 수 있다는 점이다.
'프로그래밍 > SPRING BOOT' 카테고리의 다른 글
[인프런 : spring-boot] Configuration 클래스를 이용한 사용자 인증 처리 (0) | 2022.09.07 |
---|---|
[인프런 : spring-boot] Spring Security를 이용한 인증 처리 (0) | 2022.09.07 |
[인프런 : spring-boot] Monitoring을 위한 Actuator 설정 (0) | 2022.09.07 |
[인프런 : spring-boot] Swagger 구현 방법 (0) | 2022.09.02 |
[인프런 : spring-boot] Swagger 사용 (0) | 2022.09.02 |