두 컴퓨터 시스템이 인터넷을 통해 정보를 안전하게 교환하기 위해 사용하는 인터페이스
- REST 를 기반으로 서비스 API 를 구현한 것이다
- 시스템을 분산해 확장성과 재사용성을 높여 유지보수 및 운용을 편리하게 할 수 있다
* REST → 직관적이고 사용하기 쉬운
→ API가 HTTP 만 잘 따라도 어느 정도 만족한다
자원을 이름으로 구분하여 해당 자원 상태를 주고 받는 것
- Http URI 를 통해 자원을 명시
- Http method 를 통해 자원에 대한 데이터 처리를 수행
REST 구성 요소
- 자원 - Http URI
- 자원에 대한 행위 - Http method
- 자원에 대한 행위 내용 - Http Message Pay Load
REST 특징
- 서버 클라이언트 구조
- 무상태
- 캐시 처리 가능
- 계층화 - 클라이언트가 REST 서버한테 요청을 보내면, 서버가 닫힌 계층으로 구성되어 여러 계층을 더 사용한다
- 인터페이스 일관성 - 하나의 API는 요청 방식은 동일하다
- 요청 메시지를 직관적으로 이해할 수 있다