REST (REpresentational State Transfer)란 웹에 존재하는 모든 자원 (이미지, 동영상, DB)에 고유한 URL 을 부여해 활용하는 것으로 자원을 정의하고 자원에 대한 주소를 지정하는 방법론을 의미한다.
REST 개념은 애플리케이션 분리 및 통합, 다양한 클라이언트의 등장등으로 대두되었다. 애플리케이션의 복잡도가 증가하면서 애플리케이션을 어떻게 분리하고 통합하는 지가 주요 이슈가 되었고, 모바일과 같은 다양한 클라이언트가 등장하면서 Backend 하나로 다양한 Device 를 대응하기 위해 REST 의 필요성이 증대되었다.
RESTful API 는 이러한 REST 의 특징을 지킨 API 를 의미한다.
인터페이스: 서로 다른 두 개의 시스템, 장치 사이에서 정보나 신호르 주고 받는 경우의 접점이나 경계면. 즉, 사용자가 기기를 쉽게 동작시키는데 도움을 주는 시스템
XML (eXtensible MArkup Language): W2C에서 개발한 마크업 언어
Json (Javascript Object Notation): 데이터를 저장하거나 전송할 때 많이 사용되는 경량의 DATA 교환 형식
마크업 언어: 태그등을 이용해 문서나 데이터의 구조를 명기하는 언어 (HTML, XML 등)
HTTP (HyperText Transfer Protocol): HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜
URL (Uniform Resource Locator): 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약
업무 중 API 문서를 자주 접한다.
API에 대해 정리를 하면 좋겠다는 생각이 들었다.
API 하면 플랫폼이 먼저 떠오른다. 많은 기업에서 API 를 제공한다.
처음 open API 를 접할 때는 했던 왜 open 이지? 라는 생각은 오래가지 못했다.
API 를 제공하는 쪽, 제공받는 쪽 모두 얻는 게 있다.
하지만 이왕이면 제공하는 쪽이고 싶다.
> [IT용어] API란 무엇인가?
> 기획자로서 필요한 OPEN API 개념 이해하기
> Red Hat-API란?
> RESTful API란?