Collection 은 특별한 종류의 리소스 이다.
리소스는 데이터의 일부
물리적인 객체
추상적인 개념
하지만, 모두 URL 과 해당 URL 로 GET 요청을 보내면 클라이언트가 받는 문서 표현을 갖게 한다.
컬렉션 리소스는 구체적으로 다른 리소스들을 한그룹으로 묶는 기능을 한다. 표현역시 다른 리소스의 링크에 집중 , 이들 다른 리소스의 표현의 일부조각 또는 전체 표현을 담기도 한다.
Content-Type : application/vnd.collection+json 이면 Collection+JSON 표준 규칙 적용
application/atom+xml 이면 AtomPub 규칙이 적용됨
만약, application/json 이면 JSON 표준이 Collection 리소스에 대해 말해주지 않는다.
자신만의 표현, 명목 표준을 새로 정의한 API 사용을 하는 상황임. 사용하는 그 특정 API 세부내용을 따로 찾아야 함
Collection+JSON 에서 "items" 필드가 가장 중요하다
{ "collection" :
{
"version" : "1.0",
"href" : "http://example.org/friends/",
"links" : [
{"rel" : "feed", "href" : "http://example.org/friends/rss"}
],
"items" : [
{
"href" : "http://example.org/friends/jdoe",
"data" : [
{"name" : "full-name", "value" : "J. Doe", "prompt" : "Full Name"},
{"name" : "email", "value" : "jdoe@example.org", "prompt" : "Email"}
],
"links" : []
},
Atom Publishing Protocol 에서는 Feed 와 entry 가 중요하다.
Content-Type: application/atom+xml 의 미디어 유형을 제공
HTTP 프로토콜의 의미체계 (Semantic) 에는 URL ( 일반적인 Resource) 와 GET/PUT 같은 Method 있으며,
고유의 Web API 들 (마이크로블로깅 서비스, 결제 프로세스) 의 의미 체계는 다르다.
RECENT COMMENT