2013-05-21 4 views
1

는 예를 들어, URL입니까? users은 자원입니까, 아니면 자원의 일부입니까? 그 부분의 이름은 무엇입니까?묘사 편안하고 URL을 여기

다른 부분에도 같은 질문이 있습니다. 123comments을 가장 잘 나타내는 용어는 무엇입니까?

RESTful URL의 두 번째 부분을 나타내는 용어가 있습니까? 123/users/123이고 purchases/me/purchases입니다.

답변

0

REST는 리소스 지향적입니다. URL은 리소스를 나타냅니다. 당신의 예에서

, /users/123/comments :

  • users은 자원이다.
  • 123은 사용자의 고유 식별자입니다. 이 경우
  • 는 의견이 사용자의 하위 자원,하지만 그들은 자신의 에 아마 자원입니다 (예. /comments/{id}를 호출) 두 번째 질문에 대해

, /me/purchases의 형식은이 아니다 /users/123과 동일합니다. 그리고 /me/purchases은 아마도 /users/{myid}/purchases과 같은 짧은 URL 일 것입니다. 여기에서 purchases은 사용자 의 하위 리소스이며 /purchases/{id}에 해당하는 리소스 인이 있습니다.


은 자세한 내용 here is a video은 해당 직접 질문과 관련, 그러나 그것은 아주 잘 만들어 REST 웹 서비스에 대해 매우 흥미 롭다되지 않습니다.

0

예에서 http://example.org/users/123/comments은 리소스를 가리 킵니다. 전체 URI는 자원의 식별자입니다.

내가 당신에게 극단적 인 예를 들어 보겠습니다

,

/users/123/comments.json

/users/123/comments.xml

두 개의 서로 다른 리소스입니다.

쿼리 문자열은 또한 자원을 식별

, 그래서

/users/123/comments?format=json

/users/123/comments?format=xml

는 두 개의 서로 다른 자원입니다.

리소스가 엔터티에 매핑되지 않습니다. 리소스는 HTTP를 통해 노출시키고 URI로 식별 한 "개념"입니다.

RESTful 시스템에서 URI는 시스템 디자인에서 불투명합니다. 시스템의 클라이언트는 URI의 일부분에서 의미를 추출해서는 안됩니다. 서버는 URI 공간을 구축하는 데 도움이되는 규칙을 설정할 수 있지만 이는 서버의 개인 구현 세부 사항입니다.

RESTFul url과 같은 것이 없습니다. 이 용어는 프레임 워크 디자이너의 제작이며, 단지 당신을 혼란스럽게 할 것입니다.

+1

'format = xml','format = json','format = html'이 다른 자원을 가리킨다는 것에 동의하지 않습니다. 그들은 같은 자원을 가리 키지 만 그 자원의 다른 표현을 가리킨다. 내가 틀렸을 수도 있지만 이것은 전에 본 것입니다. –

+0

@HugoDozois http://tech.groups.yahoo.com/group/rest-discuss/message/11147은 2008 년 Roy Fielding의 게시물입니다. "형식 별 ** 리소스 **"로만 "확장명"이 다른 두 개의 URI –