알다시피, RESTful 가이드 라인에 따르면 모든 URL은 단일 리소스 또는 리소스 그룹을 나타내야하며 액션을 인수로 사용해야합니다. 다음, 이제RESTful : 동일한 URL에서 다른 작업을 수행하는 방법은 무엇입니까?
POST /users HTTP/1.1
Host: www.example.com
username=<username>&password=<password>&email=<email>&age=<age>
나는 사용자 등록을 취소하려는 경우 :
우리가 '사용자'라는 이름의 자원 그룹이 가정하고,그래서 API가 될 수 나는 또 하나의 사용자를 등록 할 등록 해제 API의 :
방법은 여전히 POST
것, URI가 계속 될 것입니다
/users
,
인수 할 수 username=<username>&password=<password>&reason=<reason>
이 상황에서 두 개의 API는 서로 다른 인수를 사용하여 동일한 URL과 메소드를 공유하므로 좋은 디자인이 아닙니다.
그래서 질문 :
서버 설계자가 동일한 리소스에서 두 가지 다른 작업을 쉽게 구분할 수있게하려면이 상황에 대한 좋은 설계는 무엇입니까?
편집
정말 팀의 제안 @ 감사하고 지금은 내 질문이 더 일반적인되고 싶어 :
이 자원에 대한 여러 가지 업데이트 작업, 그리고 행동의 각 인자의 다른 조합을 취하면, RESTful api를 지금 어떻게해야합니까? 고마워. :)
고마워요! 제 편집을 확인해주세요. – dastan
어떻게 작동하는지는 백엔드에서 무엇을 사용 하느냐에 달려 있지만, 그 질문은 완전히 다른 문제라고 생각합니다 :-) –
'백엔드에 사용하는 것', 더 설명 할 수 있습니까? 미안하지만 무슨 뜻인지 잘 모르겠다. – dastan