Loading…

hateoas 예제

이 사양과 약간의 연결이 끊어지고 제공된 예제가 있습니다 – GET http://api.domain.com/management/departments 수행하면 일반적으로 표시된 대로 부서를 반환하지 않습니다(부서 10). 대신 일반적으로 부서 ID 목록을 반환합니다. GET http://api.domain.com/management/departments/10 호출하면 일반적으로 위에 표시된 대로 전달된 id에 대한 개체 세부 정보를 반환해야 합니다. 예를 들어 아래에서 주어진 JSON 응답은 HTTP GET http://api.domain.com/management/departments/10 같은 API에서 제공될 수 있습니다. Order 클래스를 리소스로 모델링해 보겠습니다: 앞의 예제에서 서버에서 반환되는 응답에는 직원 리소스 10/직원에 대한 하이퍼미디어 링크가 포함되어 있으며, 이 링크는 클라이언트가 부서에 속한 직원을 읽기 위해 트래버스할 수 있습니다. 이 것에서 실제로 누락 된 것은 다음 중 하나에 대한 응답이 일반적으로 표시되는 내용의 예입니다. 1) HATEOAS 링크의 POST API는 일반적으로 필요에 따라 수행됩니다. 예를 들어, 누군가가 모든 새 부서 정보로 Excel을 업로드 할 수있는 URL을 제공하려는 경우 GET, PUT 또는 다른 방법이이 컨텍스트에서 유효하지 않기 때문에 HTTP 메소드 정보가있는이 API 세부 정보를 포함합니다. 이 예제에서는 Spring HATEOAS가 휴게소 웹 서비스에서 API 검색 가능성을 어떻게 육성하는지 보여 줍니다. 링크가 있는 경우 클라이언트는 이를 따르고 고객에 대한 모든 주문을 받을 수 있습니다. 프로세스를 통해 클라이언트를 안내하는 API를 정의하려고 합니다. 리소스를 얻은 후 이 프로세스에서 이 리소스에는 프로세스에서 만드는 데 필요한 다음 요소를 나타내는 링크가 포함됩니다. 이 계획은 예제와 같은 링크를 추가합니다: HATEOAS는 응용 프로그램 상태의 엔진으로 하이퍼텍스트를 의미합니다.

즉, 하이퍼텍스트를 사용하여 API를 통해 방법을 찾아야 합니다. 예: 예제에서는 클라이언트가 응용 프로그램에 대한 단일 진입점을 가질 수 있으며 응답 표현의 메타데이터를 기반으로 추가 작업을 수행할 수 있습니다. 이번 봄 HATEOAS 예제에서는 스프링 부팅 프로젝트에서 생성된 기존 REST API에 HATEOAS 링크를 추가하는 방법을 배웁니다. 우리는 클래스 org.springframework.hateoas.ResourceSupport와 함께 org.springframework.mvc.ControllerLinkBuilder 및 org.springframework.hateoas.Link 클래스를 사용합니다. 이 예제에서는 다음과 같이 끝점이 있는 세 개의 REST API를 만들었습니다. 클라이언트. 예제를 살펴보겠습니다. 다른 제품 설명을 제공하는 REST 서비스가 있다고 가정합니다. 일부 전자 상거래 웹 사이트에 대해 생각. 해당 웹 사이트에서 제품으로 JSON 응답을 받고 HATEOAS를 사용하는 경우 다음과 같이 보일 수 있습니다: 예를 들어,이 GET 요청은 계정 리소스를 인출하여 XML 표현에 대한 세부 정보를 요청합니다.

URL에 포함 된 매개 변수를 표시 – 당신은 “href : 10 / 서명”이라고 표시합니까 – 10 및 문자열 서명은 모두 매개 변수입니다 – 10은 컨텍스트 ID이며, 서명은 우리가 관심있는 엔티티입니다 – 이것은 출발자서명 ID의 목록을 반환합니다. t 10. ControllerLinkBuilder는 스프링 MVC 컨트롤러에 대한 풍부한 지원을 제공합니다. 다음 예제에서는 CustomerController 클래스의 getOrdersForCustomer() 메서드를 기반으로 HATEOAS 하이퍼링크를 빌드하는 방법을 보여 주었습니다. 프로필이 있어야 하는 계정이 있는 경우와 같습니다.