1 분 소요

REST(Representational State Transfer) API 이란?

REST API는 웹 어플리케이션에서 클라이언트와 서버 간 통신을 위한 아키텍처 스타일 중 하나이다. REST API를 사용하면 클라이언트는 인터넷을 통해 서버에 요청을 보내고 서버는 해당 요청에 대한 응답을 반환한다.

RESTful API란?

RESTful API는 REST API의 원칙을 따르는 API를 의미한다.

  • 즉, REST API는 REST 아키텍처 스타일에 따라 설계된 모든 API를 의미하는 일반적인 용어이다. RESTful API는 REST API 원칙에 따라 디자인된 특정 API를 나타낸다.
  • 따라서, RESTful API는 REST 원칙을 따르는 API이며, URL 구조와 HTTP 메소드를 사용하여 자원을 나타내고, CRUD기능을 수행한다.

REST API의 주요 장점들은?

  1. 유연성과 확장성 REST API는 HTTP 기반으로 동작하므로, 클라이언트와 서버 간의 통신이 자유롭고 유연합니다. 또한, REST API는 자원(resource) 중심으로 설계되어 있기 때문에 새로운 자원을 추가하거나 기존 자원을 수정하는 등의 변경이 필요할 때도 쉽게 확장할 수 있다.

  2. 캐시 기능 REST API는 HTTP의 캐싱 기능을 이용하여 서버의 부하를 줄일 수 있다. 캐싱을 이용하면, 클라이언트는 자주 요청하는 데이터를 캐시에 저장하여 서버에 다시 요청하지 않고 캐시에서 데이터를 가져올 수 있다.

  3. 독립적인 클라이언트와 서버 REST API는 클라이언트와 서버가 독립적으로 개발될 수 있도록 설계되어 있다. REST API는 Stateless(상태 보존 X, 반대는 Stateful서버가 상태를 보존)한 구조를 가지고 있기 때문이다. 이는 클라이언트와 서버 간의 의존성을 낮추어 서로 독립적으로 개발하고 배포할 수 있도록 한다. Stateless 관련 사이트

  4. 보안성 REST API는 HTTPS 프로토콜을 이용하여 통신하기 때문에, 보안성이 높습니다. 또한, REST API는 각 요청에 대한 인증 정보를 포함하여 요청하므로, 보안성을 더욱 높일 수 있다.

  5. 다양한 클라이언트 지원 REST API는 HTTP 기반으로 동작하기 때문에, 다양한 클라이언트에서 지원됩니다. 웹 브라우저를 비롯하여, 모바일 앱, 데스크톱 앱, 서버 애플리케이션 등에서 모두 REST API를 이용할 수 있다.

즉, 이 방식은 개발 시에도 서로의 의존성이 낮아 용이한 편이고, HTTP 기반이라 다양한 클라이언트에서 지원되며 보안성 또한 높다. 이외에도 캐시 기능을 통해 서버 부하를 줄이는 등 아주 효율적인 서버 간 통신 방식이라 볼 수 있다.

이러한 장점들 때문에 REST API는 현재 가장 인기 있는 웹 서비스 아키텍처 중 하나이다.

업데이트: