All Articles

REST API

REST : 자원(resource)으로 구분하여 해당 자원의 상태(정보)를 주고 받는 모든 것.

자원에 의한 상태(정보) 전달.

REST는 기본적으로 웹의 기존 기술과 HTTP 프로토콜을 그대로 활용하기 때문에 웹의 장점을 최대한 활용할 수 있다.
REST는 네트워크 상에서 Client와 Server 사이의 통신 방식 중 하나이다.

구체적으로 말하자면 HTTP URI를 통해 자원(Resource)을 명시하고 HTTP Method(POST, GET, PUT, DELTE)를 통해
상태(정보)를 어떻게 처리할 것인지에 대한 행위를 정의한다.

CRUD

Create: 생성(POST)
Read: 조회(GET)
Update: 수정(PUT)
Delete: 삭제(DELETE)

REST의 장단점

장점

  1. HTTP 프로토콜의 인프라를 그대로 사용하므로 REST API 사용을 위한 별도의 인프라를 구축할 필요가 없다.
  2. HTTP 표준 프로토콜에 따르는 모든 플랫폼에서 사용이 가능하다.
  3. REST API 메시지가 의도하는 바를 명확하게 나타내므로 의도하는 바를 쉽게 파악할 수 있다.
  4. 서버와 클라이언트의 역할을 명확하게 분리한다.

단점

  1. 표준이 존재하지 않는다.
  2. 구형 브라우저가 아직 제대로 지원해주지 못하는 부분이 존재한다.

REST API : 데이터와 기능의 집합을 제공하여 컴퓨터 프로그램간 상호작용을 촉진하며, 서로 정보를 교환 가능하도록 하는 것.

REST 기반으로 서비스 API를 구현한 것.

REST API 특징

확장성과 재사용을 높여 유지보수 및 운용을 편리하게 할 수 있다.
REST는 HTTP 표준을 기반으로 구현하므로, HTTP를 지원하는 프로그램 언어로 클라이언트, 서버를 구현 할 수 있다.

RESTful : REST 아키텍처를 구현하는 웹 서비스를 나타내기 위한 용어다.

RESTful의 목적

  1. 이해하기 쉽고 사용하기 쉬운 REST API를 만드는 것.
  2. 일관적인 컨벤션을 통한 API의 이해도 및 호환성을 높이는 것.