@ Alexandru가 진정한 RESTful 서비스 또는 클라이언트의 경우 리차드슨 성숙도 모델을 지적 했으므로 마지막 레벨 (보통 인덱스 0으로 시작하는 3 개)은 이미 있어야합니다. 그렇지 않으면 "사실"RESTful이 아닙니다.
REST의 핵심 아이디어는 웹 클라이언트와 마찬가지로 분산 된 클라이언트와 서버를 분리하는 것입니다. 웹 브라우저는 웹 서버에서 완전히 제거 할 수 없습니다. 또한 특정 시작 페이지에서 시작한 다음 링크를 사용하여 페이지를 탐색하는 전통적인 웹 세션과 비슷하게 RESTful 컨텐트에도 동일한 기본 리소스에서 시작한 다음 반환 된 URI를 사용하여 새 리소스로 이동하는 것과 동일한 내용이 적용됩니다.
각 URI는 참조 된 자원에서 수행 할 수있는 가능한 조치 또는 메소드를 정의하는 프로토콜 ID로 시작합니다. 가장 자주 이것은 HTTP가 될 것이지만 그것에 국한되지 않고 mailto, FTP 또는 그런 종류의 것을 사용할 수도 있습니다. 따라서 각 프로토콜 사양은 가능한 작업에 대한 설명서이기도합니다.
URI에 전달되어야하는 매개 변수는 이미 이전 요청의 응답에 의해 설정되거나 템플리트 화되어 클라이언트에 의해 동적으로 설정 될 수 있습니다. 여기서 클라이언트는 템플릿을 처리하는 방법과 가능한 값을 가져올 위치를 이해해야합니다. 그러나 이것은 응답에도 포함될 수 있습니다. 특정 양식이 서버에서도 제공되는 웹 양식과 유사합니다. media-type (즉, application/atom+xml
또는 application/hal+json
)은 콘텐츠를 더 의미 론적 가치로 제공하여 데이터 처리에 클라이언트를 지원하고 대상이 작업을 단순화하기 위해 활용할 수있는 특정 구조를 정의 할 수도 있습니다.