RESTful API와 HATEOAS 개념

parkrootseok·2025년 2월 10일

네트워크

목록 보기
6/10
post-thumbnail

RESTful API

RESTful API란?

RESTful API는 웹에서 리소스를 효과적으로 관리하고 클라이언-서버 간 통신을 단순화하는 REST 아키텍처의 원칙을 따르는 API를 말합니다.

주요 설계 원칙

REST 아키텍처의 주요 설계 원칙은 다음과 같습니다.

  • 리소스 기반 설계
    • /users, /posts와 같이 엔드포인트에 명사를 사용하여 리소스 표시
  • HTTP 메서드 활용
    • GET /users와 같이 HTTP 메서드를 통해, CRUD 작업을 정의
  • 무상태성
    • 각 요청은 독립적으로 처리되기 때문에, 요청마다 필요한 모든 정보를 포함
  • 계층화된 시스템
    • 클라이언트는 서버의 내부 구조를 알 필요 없이 API 호출
  • 캐싱
    • 클라이언트와 서버 간 불필요한 요청을 줄이기 위해, 캐싱을 적극적으로 활용
  • 일관된 응답과 에러 처리
    • 일관된 응답 형식을 유지하고, 적절한 HTTP 상태 코드를 활용하여 에러 처리

HATEOAS

HATEOAS란?

HATEOAS는 RESTful API에서 클라이언트가 서버의 응답을 통해 가능한 다음 동작을 발견할 수 있도록 하는 원칙입니다. 즉, API 응답 내에 관련 링크를 포함하여 클라이언트가 리소스를 탐색할 수 있도록 합니다. 이를 적용하면, 다음 예시와 같이 응답을 받습니다.

{
  "id": 1,
  "name": "John Doe",
  "email": "john.doe@example.com",
  "links": [
    { "rel": "self", "href": "/users/1" },
    { "rel": "update", "href": "/users/1", "method": "PUT" },
    { "rel": "delete", "href": "/users/1", "method": "DELETE" }
  ]
}

이와 같이, 클라이언트는 응답 내 links 배열을 참고하여 해당 리소스에서 수행할 수 있는 작업을 파악할 수 있습니다.

profile
동료들의 시간과 노력을 더욱 빛내줄 수 있는 개발자가 되고자 노력합니다.

0개의 댓글