REST란?
본문 바로가기

알아두면 좋을 것들

REST란?

REST, RESTful 이란 말을 여기저기 많이 들어봤을 것이다.

 

- REST는 분산 시스템 설계를 위한 아키텍처 스타일 이고,

- RESTful은 제약 조건의 집합을 모두 만족 하는 것을 의미한다.

(※ 아키텍처 스타일이란 제약조건의 집합이라 보면된다.)

 

REST라는 아키텍처 스타일이 있고 RESTfulAPI라는 말은 REST 아키텍처 원칙을 모두 만족하는 API라는 뜻이다.

 

그럼 REST가 필요한 이유는 뭘까?

☞ 분산시스템

스케일이 큰 애플리케이션을 모듈, 기능별로 분리하기 쉽기 때문이다. RESTfulAPI를 서비스 하면 다른 모듈 또른 애플리케이션들이라도 RESTfulAPI를 통해 상호간에 통신을 할 수 있기 때문이다.

 

☞ 다양한 클라이언트를 위해서

통일된 인터페이스를 통해 여러 플랫폼의 클라이언트에서 사용할수 있다.

(ios, android, mac, windows : java, php, C#, phython)

 

 

RESTful API를 사용하면 좋은점은 무엇인가?

☞ 서버도 요청한 데이터만 보내주면되니 가벼워지고 유지보수 하기에도 용이하다.

웹 페이지를 위한 HTML 이미지등을 보내던 것과 달리 데이터만 보내면 여러클라이언트에서 해당 데이터를 적절히 보여주기만 하니 여러 클라이언트가 자유롭고 부담없이 데이터를 이용할 수 있다.

>> RESTful API를 이용해서 하나의 큰 서비스 애플리케이션을 여러 모듈화된 작은 서비스 들로 나눌 수 있다.

 

□ REST의 구성은 자원, 행위, 표현방식으로 구성된다.

자원 : HTTP URI  >>  URI = URL + URN

행위 : HTTP Method  >>  POST, GET

표현방식 : MIME Type >> Content-Type