성장일기 : 문과생의 개발 여정 (งᐖ)ว ( ᐛ )و

REST API? 본문

프론트엔드 개발

REST API?

hyemi_flora 2024. 4. 11. 14:38

REST API란?

REST (Representational State Transfer)는 프레임워크나 라이브러리가 아니라 웹 서비스 및 API를 구축하기 위한 아키텍처 스타일. REST에서는 모든 것이 고유한 URL로 식별되는 리소스 이며 이러한 리소스는 일반적으로 HTTP 메서드(GET, POST, PUT 또는 PATCH, DELETE)를 사용하여 조작한다.

GET 메서드는 리소스를 검색하고, POST 메서드는 새 리소스를 생성하며, PUT 또는 PATCH 메서드는 리소스를 업데이트하고, DELETE 메서드는 리소스를 제거합니다. 이러한 HTTP 메서드를 사용하여 클라이언트와 서버 간의 상호작용을 정의하고 리소스에 대한 작업을 수행.

클라이언트에서 서버로의 각 요청에는 요청을 이해하고 완료하는 데 필요한 모든 정보가 포함되어야 한다.
서버는 요청 간에 클라이언트 컨텍스트를 저장하지 않으므로 설계가 단순화되고 확장성이 향상되고, 클라이언트와 서버의 HTTP 요청 및 응답은 리소스 상태에 대한 JSON 또는 XML 표현을 전달한다.

REST API의 이점:

  • 단순성: 표준 HTTP 방법과 공통 데이터 형식을 사용하면 REST API를 쉽게 이해하고 구현할 수 있다.
  • 상호 운용성: REST API는 사용되는 프로그래밍 언어나 플랫폼에 관계없이 다양한 애플리케이션이 원활하게 상호 작용할 수 있으므로 상호 운용성을 촉진한다. 
  • 확장성: REST API의 상태 비저장 특성으로 인해 대규모 요청을 처리할 수 있도록 쉽게 확장할 수 있다.
    이로 인해 대규모 요청을 처리하기 위해 서버를 확장하는 것이 비교적 쉽다.
  • 유연성: REST API는 다양한 디자인 원칙으로 인해 다양한 사용 사례에 맞게 조정될 수 있다.
    이는 개발자가 API를 유연하게 설계하고 변화에 적응시킬 수 있도록 해준다.

REST API의 단점:

  • 무상태: REST는 무상태 트랜잭션에 의존. 즉, 각 요청은 모든 정보를 독립적으로 완료해야 한다.
  • 제한된 페이로드 크기: REST의 데이터 전송은 종종 JSON 또는 XML 페이로드를 통해 발생하며, 복잡한 데이터나 많은 쿼리를 처리하는 경우 성능 문제가 발생할 수 있다.
  • 검색 가능성 부족: REST API는 기본적으로 사용자가 자신이 제공하는 기능이나 상호 작용 방법을 쉽게 이해할 수 없으므로 새로운 사용자에게 복잡성이 가중될 수 있다.
  • 복잡한 쿼리에 대한 성능: REST는 더 큰 리소스에서 특정 데이터 포인트를 검색하는 데 적합하지 않을 수 있다. 

'프론트엔드 개발' 카테고리의 다른 글

올바른 API란?  (0) 2024.03.11
[HTML Entitiy] < >   & "  (1) 2023.12.05