REST API에서 'REST'란, 'Representational State Transfer'의 약자로, 리소스를 이름으로 구분하여 해당 리소스의 상태를 주고받는 것을 총칭한다. 즉 리소스의 표현에 의한 상태 전달을 의미하는데, 먼저, '리소스의 표현'이란, 문서나 이미지, 이 외 모든 형태의 데이터나 해당 소프트웨어 자체를 표현하기 위한 이름으로 해석된다. 예를 들어, 카페의 메뉴 정보가 자원일 때, 'cafe'를 자원의 표현으로 정하는 것이다. 이어서 '상태 전달'이란, 데이터가 요청되는 시점에서 리소스의 상태(정보)를 전달하는 활동으로 해석된다. 전달되는 형태는 JSON또는 XML이 일반적이다. 즉, REST API는 소프트웨어 개발 아키텍쳐의 한 형식이며, 주로 www(World Wide Web)와 같은 분산 하이퍼미디어 시스템을 위한다고 정의 내릴 수 있다.
REST의 구체적인 정의는 다음과 같다.
- HTTP URI(Uniform Resourse Identifier : 통합 자원 식별자 - 인터넷에 있는 자원을 나타내는 유일한 주소)를 통해 리소스를 명시하고, HTTP Method(ex. DELETE, POST)를 통해 해당 자원에 대한 CURD Operation을 적용하는 형식.
- CURD Operation
- Create : 생성(POST)
- Read : 조회(GET)
- Update : 수정(PUT)
- Delete : 삭제(DELETE)
- HEAD : header 정보 조회(HEAD)
- CURD Operation
REST API의 특징은 다음과 같다.
- REST는 HTTP(HyperText Transfer Protocol : www 상에서 정보를 주고 받을 수 있는 프로토콜) 표준을 기반으로 구현하기 때문에, HTTP를 지원하는 프로그래밍 언어로 클라이언트, 서버를 운용할 수 있다.
- 사내 시스템도 REST 기반으로 시스템을 분석해 확장성과 재사용성을 높여 유지보수 및 운용을 편리하게 할 수 있다.
'project' 카테고리의 다른 글
ELK Stack --1 (0) | 2020.01.15 |
---|---|
빅데이터(Big Data) (0) | 2020.01.14 |
SNORT --2: 설치 (0) | 2020.01.11 |
SNORT --1 (0) | 2020.01.10 |
IDS/IPS (0) | 2020.01.09 |