본문 바로가기

IT-백엔드

Rest API에 대해서 1

RestAPI(Restful API)란?

서버랑 클라이언트랑 통신을 하기 위한 규약이라고 생각하시면 됩니다. 그런 약속의 형태중에 하나가 Rest인거고 이 Rest하게 API를 설계하면은 조금 더 효율적으로 개발을 할 수 있게 됩니다.

 

왜 Rest API가 필요한가?

1. REST API 메시지를 읽는 것 만으로도 메시지가 의도하는 바를 명확하게 파악

 

 

2. 기본적으로 HTTP를 사용하여 요청 및 응답 처리

HTTP 인프라를 그대로 사용하기 때문에, REST API 사용을 위한 별도의 인프라 구축이 필요가 없습니다.

 

 

3. 클라이언트와 서버가 독립적으로 운영 가능

클라이언트가 리소스를 요청하면, 서버는 해당 리소스를 응답해주기만하면 된다.

 

 

예시

일단 첫번째 예시를 유튜브로 드는데요. 일단 인기 코너를 눌렀을 경우 trending에 들어가는데요. 누가봐도 인기는 trending이고 구독은 subscriptions에 해당하는 것을 알잖아요. 저렇게 메시지가 의도하는 바를 파악하기 쉽습니다.

 

 

정의 Rest란?

분산 시스템 설계를 위한 아키텍쳐 스타일이라고 합니다. 다른 말로 해석을 하면, 네트워크 아키텍쳐 원리 모음 또는 제약 조건의 집합이 있습니다.

간단하게 말하자면, 사이트 구성 원리라고 생각하시면 됩니다.

일단 그러면 Rest라는 것은 사이트를 어떻게 구성을 해야하는가하는 원리입니다.

 

REpresentational (표현)

State (상태)

Transfer (전송)

 

자원의 표현을 가지고 상태를 전달한다라고 생각하시면 됩니다. 자원을 URI에 명시하시면 됩니다.

예시를 들자면 유튜브에서

URI를 설계할 때 자원을 URI에 명시하는 것입니다. 그리고 상태는 HTTP 메소드를 뜻합니다.

 

 

사이트 구성원리를 따르는 API를 Restful API라고한다라고 생각하시면 됩니다.