Spring Framework
Spring boot / Spring HATEOAS 간단 정리
iIxmont
2019. 2. 1. 14:29
HAL ( Hypertext Application Language ) : API 리소스들 사이에 쉽게 일관적인 하이퍼링크를 제공한다.
HAL이 API에 적용되면 API 간에 쉽게 검색이 된다.
말보다 간단하게 적용 전후를 한번 보자.
HAL 적용 전의 API
[
{
"productId": 1,
"name": "ABC",
"description": "Product ABC",
"unitPrice": 9.99
},
{
"productId": 2,
"name": "XYZ",
"description": "Product XYZ",
"unitPrice": 19.99
}
]
HAL 적용 후의 API
{ "_links": { "self": { "href": "/product/1" }, "collection": { "href": "/products" }, "templated": { "href": "/product/{productId}", "templated": true } }, "productId": 1, "name": "ABC", "description": "Product ABC" "unitPrice": 9.99 }
HTTP API 가 아닌 REST API 를 만든다면 HAL을 적용해야 한다.
RestAPI에 HAL 개념이 적용이 되면 개발 경험을 좋게 만들 수 있다.
HAL 적용하는 방법은 여러가지가 있겠지만.
스프링 프레임워크에서는 HATEOAS 를 사용한다.