REST API 간단 정리

이름·2023년 7월 10일
post-thumbnail

REST API

: REST 아키텍쳐 스타일에 부합하는 API

요약

  1. url을 통해 자원을 식별해야 한다.
  • 자원에 대한 구분과 처리를 위해 명확하고 직관적인 URL 네이밍을 사용하는 것이 좋습니다.
  1. HTTP 메서드를 사용하여 자원에 대한 행위를 표현한다.

  2. 메시지는 스스로에 대해 설명해야 한다
    1) 이를 위해 Host 헤더에 도메인명을 기재하여 요청 대상을 찾을 수 있도록 해야 합니다.
    -> ip만으로는 요청 대상을 찾아낼 수 없으므로
    2) 캐싱 전략을 지정하기 위해 캐시 관련 헤더를 사용할 수 있습니다.
    ex) cache-control , age , etag , vary

  3. HATEOAS (Hypermedia as the Engine of Application State)
    클라이언트에게 애플리케이션 상태를 변경할 수 있는 인터페이스를 제공해야 한다.


REST API를 사용하는 장점

  1. 간결하고 직관적인 인터페이스: REST API는 URL과 HTTP 메서드를 통해 자원에 대한 행위를 표현합니다. 이는 개발자가 직관적으로 API를 이해하고 사용할 수 있도록 도와줍니다.

  2. 자원의 명확한 식별: REST API는 각 자원에 고유한 URL을 할당하여 자원을 식별합니다. 이를 통해 클라이언트는 명확하게 특정 자원을 식별하고 요청할 수 있습니다.

  3. 플랫폼 독립성: REST API는 HTTP 프로토콜을 기반으로 동작하므로 플랫폼에 독립적입니다. 이는 다양한 클라이언트와 서버 간의 상호 운용성을 높여줍니다.

  4. 캐싱을 통한 성능 향상: REST API는 캐시를 활용할 수 있는 기능을 제공합니다. 클라이언트는 캐시된 데이터를 사용하여 네트워크 부하를 줄이고 응답 시간을 단축할 수 있습니다.

  5. 확장성과 유연성: REST API는 자원 중심의 아키텍처를 따르므로 새로운 자원을 추가하거나 기존 자원을 변경하는 것이 비교적 쉽습니다. 이는 시스템의 확장성과 유연성을 높여줍니다.

  6. 다양한 클라이언트 지원: REST API는 다양한 클라이언트, 예를 들어 웹 브라우저, 모바일 앱, 데스크톱 애플리케이션 등에서 사용할 수 있습니다. 이는 클라이언트의 다양한 플랫폼과 기기에서 API를 활용할 수 있는 장점을 제공합니다.

  7. 테스트 용이성: REST API는 HTTP 프로토콜을 사용하므로 다양한 테스트 도구를 활용하여 API를 테스트할 수 있습니다. 이는 개발자가 API를 쉽게 테스트하고 디버깅할 수 있도록 도와줍니다.

  8. 서비스의 재사용성: REST API는 자원 중심의 아키텍처를 따르므로 다른 애플리케이션에서도 동일한 자원을 활용할 수 있습니다. 이는 서비스의 재사용성을 높여줍니다.

0개의 댓글