우리는 복잡한 데이터 모델을위한 REST API를 설계하고 있습니다. 모델은 마치 나무와 같습니다.하나의 REST 호출에서 여러 작업 처리
TOPObject
Name: XX
Start Date: 01/10/2011
End Date: 02/18/2011
List
NestedObject
Name: NO1
Code: CCC1
NestedObject
Name: NO2
Code: CCC2
클라이언트 내에서이 개체 전체를 한 화면에서 작업하고 모든 변경 사항을 한 번에 보낼 수 있습니다. 리소스를 두 개의 호출로 나누고 싶지 않습니다. 하나는 TOPObject 용이고 다른 하나는 NestedObject 용입니다. TOPObject에 대한 POST 호출을 한 번하고 싶습니다.
어떻게 계층 구조의 여러 수준을 여러 번 변경해야합니까? 예를 들어, 그들이 이런 식으로 오브젝트를 변경하면.
TOPObject
Name: XY /* changed */
Start Date: 01/10/2011
End Date: 02/18/2011
List
NestedObject
Name: NO1
Code: CCC1
/* Notice that NesteObject NO2 was removed as well */
NestedObject /* added */
Name: NO3
Code: CCC3
그래서 한 번의 호출에는 추가, 업데이트 및 삭제의 세 가지 별개의 작업이 있습니다. 그것들은 하나의 트랜잭션으로 수행되어야합니다.
우리는 데이터와 함께 "조치"를 보낼 생각을 가지고 있었지만, 그것은 나에게 RESTful하지 않습니다. 어떤 제안.