REST API는 서버 클라이언트 API 아키텍쳐이고 get post put delete 네 가지의 메소드를 사용하여 서버와 클라이언트가 통신하는 방법이다. 무엇을 얻을지, 무엇을 추가할지, 무엇을 수정할지, 무엇을 삭제할지 URI에 요청을 담아서 보낸다. 조사한 바로는 REST, RESTful API 둘은 같은 의미이다. REST의 규칙을 지켜서 API를 짰으니, RESTful 하네요!
REST API 는 RESTful 한 API 를 말하고 특정 규칙을 지키는 API 라고 할 수 있다. 어떤 프로그래밍 언어를 쓰던, RESTful 하게 API를 구성하면 REST(ful) API라는 것이다.
이런 방식을 왜 써야할까?
협업을 할 때 특정한 규칙을 따르지 않고 협업을 하게 되면 나중에 그 작업을 인계받았을 때 작업물을 이해하기 매우 힘들 것이다.
API를 만들 때도 마찬가지이다. 자신의 마음대로 요청하는 코드를 짜면 이해하기도 힘들고 사용하기도 힘들 것이다. REST 는 고정된 방식을 갖추게 함으로써 이러한 불편을 해소한다.
아마존에서 설명하는 REST API 규칙들
REST API는 기술, 언어에 국한되어있는것이 아니라 API를 제작하는 규칙이다. 개발자들 사이에서 널리 통용되는 규칙들이기 때문에 숙지해두는 것이 좋을 것 같다.
일반적으로 설명되는 규칙은 다음과 같다.
REST API에서는 모든 데이터를 리소스로 취급한다. 각 리소스는 고유한 URL로 식별된다. 예를 들어, 사용자 정보가 리소스라면 URL은 http://example.com/users가 될 수 있다.
REST API는 HTTP 메서드를 사용하여 리소스에 대한 작업을 정의한다. 주요 메서드는 다음과 같다.
GET: 리소스를 조회한다. 예: GET /users는 모든 사용자 정보를 조회한다.
POST: 새로운 리소스를 생성한다. 예: POST /users는 새로운 사용자를 생성한다.
PUT: 기존 리소스를 업데이트한다. 예: PUT /users/1는 ID가 1인 사용자의 정보를 업데이트한다.
DELETE: 리소스를 삭제한다. 예: DELETE /users/1는 ID가 1인 사용자를 삭제한다.
REST API는 무상태성을 가진다. 즉, 각 요청은 독립적이며, 서버는 이전 요청의 정보를 저장하지 않는다. 모든 요청은 필요한 모든 정보를 포함해야 한다. 예를 들어, 인증 토큰을 각 요청에 포함시켜야 한다.
클라이언트와 서버는 JSON, XML 등의 형식으로 데이터를 주고받는다. 일반적으로 JSON 형식이 많이 사용된다.
REST API는 표준화된 URL과 메서드를 사용하여 일관된 인터페이스를 제공한다. 이를 통해 개발자는 API 사용 방법을 쉽게 이해하고 사용할 수 있다.
1. AMAZON
2. IBM
3. [네트워크] REST API란? REST, RESTful이란?
4. URL URI