HTTP만든분 중에 한분이
웹의 장점을 최대한 활용할 수 있는 네트워크 기반의 아키텍쳐를 소개했는데
그것이 바로 Representational state transfer (REST)
메서드
의미
POST
Create
GET
Select
PUT
Update
DELETE
Delete
아래와 같이 표현함.
{ 
   "users":{ 
      "name":"taetae"
   }
}
이 구문의 의미는 아래와 같다
POST = 만든다 의미
URI = web.co.kr/users (모든 것은 URI가 존재한다)
이름이 taetae인 사람을 만드는 메서드다.

그럼 taetae라는 이름을 가진 리소스에 접근하려면 (가져오려면)
URI는 web.co.kr/users/taetae 이고
가져올 때는 Get 을 붙인다.
지우는것은 DELETE 메소드
HTTP DELETE, http://web.co.kr/users/taeae

다중조건
다음은 http://web.co.kr/users 라는 리소스를 이름은 terry, 주소는 seoul 이라는 내용(메시지)로 HTTP Post를 이용해서 생성하는 정의이다.
{ 
   "name":"terry",
   "address":"seoul"
}

수정
다음은 http://web.co.kr/users 라는 사용자 리소스중에, id가 terry 인 사용자 정보에 대해서, 주소를 “suwon”으로 수정하는 방식이다. 수정은 HTTP 메서드 중에 PUT을 사용한다.
{ 
   "name":"terry",
   "address":"suwon"
}

REST는 HTTP표준만 지키면, 어떠한 기술에서도 사용가능하다.
HTTP + JSON으로 REST API를 정의했다면,
모든 플랫폼에서 사용가능하다.

모든 것에 URL 부여된다.
 
Ex) ASP.NET WEB API 레스트풀
외부 연결 URI를 REST API 라고 하고, REST 방식의 서비스 제공이 가능한 것을 RestFul 하다고 표현한다.


덧.
Azure 아키텍쳐에도 REST API가 있음





+ Recent posts