문제

웹 서비스가 RESTful로 분류되도록 서버에서 허용해야 하는 최소 HTTP 동사 집합은 무엇입니까?

내 호스팅 업체가 허용하지 않으면 어떻게 되나요? 놓다 그리고 삭제?

이게 정말 중요한가요? 이것만 있으면 오래오래 행복하게 살 수 있을까요? 얻다 그리고 우편 ?


업데이트: 답변해주셔서 감사합니다. 로저의 대답 Bill Venners와 Elliotte Rusty Harold 인터뷰에 대한 링크 때문에 아마도 가장 좋았을 것입니다.이제 알겠습니다.


도움이 되었습니까?

해결책

예, PUT 및 DELETE 없이도 생활할 수 있습니다.

이 기사에서는 그 이유를 설명합니다.http://www.artima.com/lejava/articles/why_put_and_delete.html

진정한 RESTafrians에게는 이것이 이단일 수 있지만 현실 세계에서는 가지고 있는 것을 가지고 할 수 있는 일을 합니다.최대한 합리적이고 자신의 관례에 따라 일관성을 유지하세요. 하지만 P와 D 없이도 훌륭한 RESTful 시스템을 구축할 수 있습니다.

rp

다른 팁

X-Http-Verb-Override:DELETE inst를 사용할 수도 있습니다.HTTP DELETE.이는 HTTP 동사를 변경할 수 없고 GET 및 POST만 지원하는 Silverlight 클라이언트에게도 유용합니다.

GET 및 POST만 사용하면 여전히 RESTful입니다.귀하의 웹 서비스는 GET 또는 POST만 필요한 작업만 수행할 수 있으므로 괜찮습니다.

REST는 프로토콜 구현이 손상된 경우 프로토콜 규칙을 깨는 것을 허용합니다(그래서 사용자가 수행하는 유일한 비표준 작업은 구현의 손상된 부분을 피하는 것입니다).따라서 REST 내에서는 DELETE 또는 PUT과 같이 일반적으로 지원되지 않는 동사를 나타내기 위해 다른 방법을 사용하는 것이 허용됩니다.

편집하다:다음은 REST를 만들고 정의한 Fielding의 인용문입니다.

REST API에는 HTTP의 PATCH 메소드 또는 링크 헤더 필드와 같이 표준 프로토콜의 미달된 세부 정보를 채우거나 수정하는 것 외에 통신 프로토콜에 대한 변경 사항이 포함되어서는 안 됩니다.손상된 구현에 대한 해결 방법(예: HTML이 HTTP의 메서드 집합을 정의한다고 믿을 만큼 어리석은 브라우저)은 별도로 정의하거나 최소한 부록에서 정의해야 하며 해결 방법이 결국 쓸모 없게 될 것이라는 예상을 가지고 있어야 합니다.[여기서 실패는 리소스 인터페이스가 일반이 아닌 개체별 인터페이스임을 의미합니다.]

오늘날의 웹 브라우저는 GETS + POSTS만 처리합니다.예를 들어 Rails에서 PUTS + DELETES는 숨겨진 양식 필드를 통해 "가짜"입니다.

프레임워크에 PUTS + DELETES를 "지원"하는 해결 방법이 없다면 지금은 걱정하지 마세요.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top