Google을 많이 검색할수록 더 명료 한 이름 지정이 표준보다 더 많은 흑인 예술처럼 보입니다. 내가 가지고있는 시나리오와 현재 사고하고있는 라인을 정리하고 REST 경험을 가진 사람들에게 몸무게를 재어보고 싶습니다.RESTful 네이밍
물리적 인 폴더 또는 바인더라고 생각할 수있는 "패킷"개체가 있습니다. . 이 패킷 안에는 하나 이상의 양식이 있습니다. 내 시스템은 이것을 PacketForms라는 리소스로 표시합니다. 각 양식 레코드에는 양식이 표시/인쇄되는 순서를 정의하는 SortIndex 열이 있습니다.
응용 프로그램에 양식 목록을 표시 할 때 사용자가 양식의 SortIndex를 변경할 수있는 위/아래 화살표가 있습니다. 이제이 작업을 구현할 준비가되었습니다.
제 생각에는 정렬 순서로 양식을 승격/강등시키기위한 작업이 특별히 필요했습니다. 이 접근 방식을 사용하면 여기에 나온 내용을 토대로 정렬 인덱스 에 대해을 리소스로 생각해야합니다. 그래서, 나는 그런 식으로 쿼리 문자열에 내 의도를 표현할 수있다. 맞습니까?/PacketFormSortIndex/5? 행동
PUT =
홍보 그러나 나는 또한 단지 PacketForm 자체를 업데이트하고 SortIndex의 변화에 대한 백엔드 모습을하지 왜 생각했습니다. 승격/강등 방식 대신 SortIndex가 변경되면 현재 색인이있는 양식으로 바꿀 것입니다. 따라서 누군가가 SortIndex = 3을 사용하여 PacketForm을 업데이트하여 SortIndex = 2 값을 갖는 경우 시스템은 두 레코드를 모두 업데이트하여 스왑을 수행합니다.
개인적으로 나는 첫 번째 접근 방식의 원자 성을 좋아합니다. 매우 명확하고 명확한 목적을 가지고 있으며 백엔드의 코드는 더 깨끗합니다. 그러나 내 시스템에 논리를 전파하면 "자원 무분별"에 대해 조금 걱정이됩니다.
그래서 여기에 두 가지 질문이 있습니다. 어느 쪽이든이 접근법 중 어느 쪽이 당신에게 좀 더 "편안함"을 느끼는가? 처음이라면 제안한 방식으로 쿼리 스트링을 사용하는 것이 적절합니까? 아니면 해당 URL을 구성하는 더 RESTful 한 방법이 있습니까?
널리 사용되는 무언가에 관해서는, 내가 찾던 다양한 정보로 인해 정말로 고심하고 있습니다.