1. REST

- 2000년 Roy Fielding이 제시한 네트워크 소프트웨어 아키텍처로, (1)서버와 클라이언트의 역할을 명확히 구분하고 (2)전송되는 메시지의 형식과 무관하게 일관된 인터페이스로 통신하며(uniform interface) (3)통신 전후 맥락과 무관하게 동일한 요청에는 동일한 처리를 거친 후 동일한 응답을 내보내는 것(stateless) 등을 특징으로 한다.

- REST를 따르는 소프트웨어를 RESTful한 소프트웨어라 하며, REST를 따르는 웹 API를 RESTful API 또는 REST API라 한다.

2. REST API

- REST API에서는 서버에 저장된 리소스를 HTTP URI라는 식별자로 구분하며(더 정확히는 URL), 클라이언트는 해당 HTTP URI에 표준화된 인터페이스(이를 HTTP method라 한다)로 요청을 전송하여 서버와 통신한다.