http://bcho.tistory.com/953의 글을 참고했습니다!

Rest란?

Representational safe transfer이며, 웹의 장점을 최대한 활용할 수 있는 네트워크 기반의 아키텍쳐

Rest 기본 요소

크게 리소스, 메소드, 메세지 3가지 요소로 구성된다. 예를 들어 "Terry인 사용자를 생성한다."라는 호출이 있을 때 '사용자'는 생성되는 리소스, '생성한다'라는 행위는 메소드, '이름이 Terry인 사용자'는 메세지이다. 이를 REST 형태로 표현하면

  
HTTP POST , http://myweb/users/
{  
  "users":{  
     "name":"terry"
  }
}

HTTP 메소드

HTTP에는 여러가지 메소드가 있지만 REST에서는 CRUD(Create, Read, Update, Delete) 4가지만 사용한다.

Create = Post(X)

Read = Get(O)

Update = Put(O)

Delete = Delete(O)

오른쪽의 O/X 는 Idempotent는 여러번 수행을 해도 결과가 같은 것을 의미한다.

REST 리소스

REST는 리소스 지향 아키텍쳐이므로 모든 것을 리소스(명사)로 표현한다. 예를 들어 사용자 리소스를 http://myweb/users라고 정의했다면, terry라는 id를 갖는 리소스는 http://myweb/users/terry라는 형태로 정의한다.

REST 특성

유니폼 인터페이스

rest는 http표준이라면 어떤 기술이던지 사용 가능한 인터페이스(모든 플랫폼에 사용가능한 느슨한 결합)이다. 흔히 REST라고 하면 HTTP + JSON를 떠올리는데, JSON은 하나의 옵션이다.

무상태성/스테이트리스(Stateless)

rest는 Stateless(상태를 유지하지 않음)이 특징이다. 상태가 있다/없다는 것은 클라이언트의 컨텍스트를 서버 쪽에서 유지하지 않는다는 의미이다. 쉽게 이야기하면 http 세션과 같은 컨텍스트 저장소에 상태 정보를 저장하지 않는 형태이다. rest의 각 API 서버는 들어오는 요청만을 메시지로 처리할 뿐이다. 세션과 같은 컨텍스트는 신경 쓸 필요가 없기 때문에 구현이 단순하다.

더 많은 특징 참조 주소 : http://bcho.tistory.com/953

'CS기본지식 > 컴퓨터 기본 지식' 카테고리의 다른 글

1의 보수와 2의 보수  (0) 2017.08.15

+ Recent posts