HATEOAS

lemon·2023년 3월 26일

영상 읽고 정리

목록 보기
2/3

상태 전이란 클라이언트가 서버에서 요청을 보내면, 서버는 이 요청에 대한 응답으로 상태를 전이 시키는 것을 말한다.
즉, 클라이언트와 서버 간의 상호작용이 일관적으로 이루어질 때, 상태 전이를 통해 클라이언트와 서버 간의 간격의 결합도를 낮출 수 있다.

이렇게 되면 클라이언트와 서버는 서로 독립적으로 변경될 수 있으며 서로 간의 의존성이 낮아진다.

예를 들어 서버와 클라이언트 간의 결합도가 높은 경우, 클라이언트는 서버에서 제공하는 api의 구체적인 url을 하드코딩하고 이를 기반으로 api 요청을 보내야 한다.

이는 클라이언트 측 코드가 서버의 URL 구조에 의존하게 되어, 서버의 URL이 변경될 경우 클라이언트 코드도 변경되어야 합니다.

하지만 RESTful api에서는 이런식을 보내야 한다.
예를 들어 현재 PATCH /todo/1 todo id가 1인 것을 수정중이라고 하면 다음 행위는 GET todo/1, id가 1인 todo를 불러와 잘 변경 됐는지 확인해야 한다.
그러면 수정을 완료 했을 때 응답값으로 아래처럼 와야한다.

이렇게 되면 클라이언트와 서버는 서로 독립적으로 변경될 수 있으며 의존성이 낮아진다. ~

{
  id: 1
  title: 오늘 할 일!
  data: '1. 어쩌고, 2. 저찌고.. '
  links: [
    이전 url: 'PATCH /todo/1`
    다음 url: 'GET /todo/1'
  ]
}
profile
나는야 핵심을 찌르는 개발자

0개의 댓글