REST API는 REST 아키텍처 원칙을 따르는 API입니다.
API(Application Programming Interface)
API는 어플리케이션, 서비스, 라이브러리 간의 인터페이스를 정의하는 계약입니다. 이를 통해 서로 다른 소프트웨어가 서로 상호 작용할 수 있도록 돕습니다.
REST(REpresentational State Transfer)
REST는 리소스 기반의 아키텍처 스타일로, 웹의 기본 원리를 활용하여 정보를 구성하고 전달하는 방법을 제공합니다. 이 아키텍처 스타일은 네트워크 리소스를 정의하고, 이 리소스에 대한 요청을 통해 데이터를 교환하는 것을 기반으로 합니다.
REST의 핵심 원칙
- 클라이언트-서버 구조: 클라이언트와 서버가 독립적으로 동작하여 각각의 개발과 확장에 용이합니다.
- 무상태성(Statelessness): 각 요청이 독립적이며, 이전 요청의 정보를 필요로 하지 않습니다.
- 캐시 가능성(Cacheable): 리소스는 캐시가 가능해야 하며, 이는 성능 향상과 서버 부하 감소에 기여합니다.
- 계층화: 클라이언트는 물리적으로 서버와 분리된 여러 계층을 통해 서비스를 받을 수 있습니다.
- 통일된 인터페이스: 표준 HTTP 메소드를 사용하여 리소스를 관리합니다.
- 리소스 지향: 웹의 모든 콘텐츠는 리소스로 표현되며, 각 리소스는 고유한 URI를 갖습니다.