A RESTful API(Representational State Transfer) 는 분산 시스템에서 애플리케이션 프로그래밍 인터페이스(API)를 설계하고 관리하기 위한 아키텍처 및 프로토콜 유형입니다. 2000년 논문에서 Roy Fielding이 설명한 방법인 아키텍처 RESTful API 의 기본 원리를 기반으로 합니다. REST
주요 특징은 RESTful API 다음과 같습니다.
주소 기반 액세스
GET 각 리소스는 URL(Uniform Resource Locator)로 표시되어 시스템이, POST, PUT 및 DELETE 와 같은 HTTP 요청을 통해 통신할 수 있습니다 .
상태 비저장 액세스
클라이언트의 모든 요청에는 서버가 이전 상태 정보에 의존하지 않고 요청을 이해할 수 있는 충분한 정보가 포함되어 있습니다. 서버는 요청 간에 클라이언트 상태에 대한 정보를 저장하지 않습니다.
HTTP 메서드 사용
RESTful API HTTP 메서드(GET, POST, PUT, DELETE)를 사용하여 각 요청의 목적을 정의합니다. 예를 들어 GET 정보 검색, POST 새 데이터 생성, PUT 업데이트 및 DELETE 제거에 사용합니다.
미디어 유형 사용
JSON 데이터는, XML 또는 기타 사용자 지정 형식 과 같은 형식을 사용하여 네트워크를 통해 전송됩니다. 각 요청은 원하는 데이터 형식을 지정해야 합니다.
리소스 식별
리소스는 고유한 URL로 식별되므로 클라이언트는 경로 기반 식별자를 사용하여 리소스에 액세스할 수 있습니다.
캐시 가능
의 요청 및 응답은 RESTful API 클라이언트 또는 프록시 서버 메모리에 저장되어 성능을 최적화할 수 있습니다.
레이어드 시스템
이 REST 아키텍처는 로드 밸런서 또는 프록시 서버와 같은 중간 계층을 추가하여 확장성과 관리성을 향상시킬 수 있습니다.
RESTful API는 웹 및 모바일 애플리케이션 개발에 널리 사용되어 애플리케이션 간의 효율적인 통신 및 데이터 공유를 가능하게 합니다. Facebook, Twitter, Google과 같은 주요 웹 서비스도 RESTful 아키텍처를 활용하여 개발자에게 API를 제공합니다.