본문을 포함하려면 HTTP PUT 요청이 필요합니까?
표준에서 이것에 대한 명확한 사양을 찾는 데 어려움이 있습니다. Content-Length: 0
본문을 지정하지 않은 PUT 요청을 수행 할 때 헤더를 포함하지 않는 HTTP 클라이언트 와 이러한 요청으로 인해 혼란스러워지는 서버가 있는데 어떤 프로그램을 비난해야할지 궁금합니다.
HTTP 요청에는 Content-Length 또는 Transfer-Encoding 헤더 ( RFC 2616 4.3 ) 가있는 경우 본문이 있습니다 . 요청에 본문이없는 경우에는 본문이 없으며 서버는이를 그렇게 처리해야합니다.
즉, PUT 요청에 본문이없는 것은 드문 경우이므로 실제로 빈 본문을 보내려는 클라이언트를 디자인하는 경우 Content-Length : 0을 전달합니다. 실제로 POST 읽기에 따라 및 PUT 방법 정의 ( RFC 2616 9.5, 9.6 ) 본문이 필요함을 암시한다고 주장 할 수 있지만 본문을 처리하지 않는 합리적인 방법은 길이가 0 인 본문을 가정하는 것입니다.
질문에 대답하지 않고 jaxrs가 어떻게 신체없는 PUT를 자주 사용할 수 있는지 주장합니다.
bodyless put의 예 : 사용자에게 추가 권한을 부여합니다.
PUT / admin / users / {사용자 이름} / permission / {permission}
본문이없는 경우 콘텐츠 길이는 0이어야하지만 IETF 표준에서는 본문이 필요하지 않습니다. 수행중인 작업에 적합한 방법을 사용하십시오. 코드에 넣으면
int x;
int f(){ return x; }
라는 원격 변수가 r
있습니다.
게시물은 다음과 같습니다.
r=f();
풋은 다음과 같습니다.
r=x;
get은 다음과 같습니다.
x=r;
콘텐츠가없는 경우 서버에 PUT (동사 의미로)되는 것은 무엇입니까? 사양은 "동봉 된 엔터티"같은 내용을 의미하지만, 내용이없는 요청에 따라서 서버에 넣어 아무것도없는 밀폐 된 실체가없는, 그리고 것입니다.
물론 서버에 아무것도 넣지 않으려면 대신 DELETE를 원할 것입니다.
HTTP / 1.1 표준 http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13 의 다음 섹션에 따라 콘텐츠 길이 필드가 필요합니다 .
참고 URL : https://stackoverflow.com/questions/1233372/is-an-http-put-request-required-to-include-a-body
'development' 카테고리의 다른 글
Java GC : 왜 두 개의 생존 지역입니까? (0) | 2020.10.27 |
---|---|
pom에 정의 된 Maven 속성에 액세스 (0) | 2020.10.27 |
ggplot2로 범례 알파를 설정하는 방법 (0) | 2020.10.27 |
Java 용 Python과 유사한 대화 형 콘솔이 있습니까? (0) | 2020.10.27 |
부동 소수점 비교는 어떻게해야합니까? (0) | 2020.10.27 |