우리는 여러 가지 수집 자원을 가지고 있습니다. 그 다음에 동의 RESTfully하게 합리적인 것, 그러나Rest API : 자세한 표현을 통해 관련 리소스를 만드는 것이 합리적입니까?
POST /people
{
"_links" : {
"car" : {
"href" : "/cars/66H8800"
}
}
"name": "John"
}
:
나는이 컬렉션 인스턴스 리소스를 만들 수 있습니까? /cars/66G8800
가 존재하지 않은 경우
POST /people
{
"_links" : {
"car" : {
"license" : "66H8800"
}
}
"name": "John"
}
..., 자원 /people/1
(예를 들어), 그리고 /cars/66G8800
의 생성을 초래할 것이다?
POST
(새 리소스 생성)과 PUT
(특정 리소스 업데이트/생성)의 목적이 혼합 된 것 같습니다.
저는 아직 귀하의 답변을 통해 원리를 이해하고 있습니다. "어느 쪽이 좋습니까?"에 관해서는,이 경우에는 # 2와 함께하는 것이 합리적이지 않으므로 클라이언트 측에서 점검 로직의 필요성을 제거 할 수 있습니까? – eoinoc
네, 원하면 가능합니다. 그러나이 경우 링크가 포함되지 않은 속성의 이름으로 "_links"를 사용하지 않을 것입니다 ;-) 형식을 RESTful으로 원한다면 형식을 문서화하십시오. # 1은 HAL에 가깝기 때문에 거의 동일한 사용자 정의 형식을 꿈꾸는 데 필요한 노력이 링크를 구문 분석하는 데 필요한 것보다 훨씬 적고 미래에 대해 덜 다재다 고 설명합니다.[로이 호언 장담] (http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven)을 읽어보십시오. 특히 마지막 글 머리표는 "REST API는 [사용해야] 일련의 표준화 된 미디어 유형 ". ** ** 반드시 그러지 않아야합니다. –