HTTP PUT 요청 방식은 새로운 자료를 만들거나 목표로 하는 기존의 자료를 요청 페이로드를 통해 교체합니다.

PUT과 POST의 차이점은 PUT은 멱등: 한번 혹은 연속적으로 여러번 하더라도 동일하지만 영향(부작용이 아님)을 미치지만, POST는 연속적인 요청이 그대로 전달되어 요청이 연속적으로 들어가는 것으로 되어 추가적인 영향이 있을 수 있습니다.

요청이 바디를 가지고 있다
성공적 응답이 바디를 가지고 있다 아니오
Safe 아니오
Idempotent
Cacheable 아니오
HTML forms 에 허가되는가 아니오

문법

PUT /new.html HTTP/1.1 

예제

요청

PUT /new.html HTTP/1.1
Host: example.com
Content-type: text/html
Content-length: 16

<p>New File</p>

응답

만약 현재 대표로 존재하는 자료가 없는 것을 목표로 하고 PUT 요청이 성공적으로 해당 자료를 생성했다면, 서버는 반드시 사용자 에이전트에게 201 (Created) 응답을 보내서 그 사실을 알려주어야 합니다.

HTTP/1.1 201 Created
Content-Location: /new.html

만약 현재 대표되는 자료가 있는 것을 목표로 하고 요청에 포함된 자료에 준하여 성공적으로  대표되는 자료가 수정되었다면, 서버는 반드시 200 (OK) 또는 204 (No Content) 를 응답으로 보내 성공적으로 요청을 마무리했다는 것을 알려주어야 합니다.

HTTP/1.1 204 No Content
Content-Location: /existing.html

기술 사양

기술 사양 제목
RFC 7231, section 4.3.4: PUT Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content

브라우저 호환성

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic supportChrome Full support YesEdge Full support YesFirefox Full support YesIE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support YesOpera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes

Legend

Full support  
Full support

함께 참고할 내용

문서 태그 및 공헌자

이 페이지의 공헌자: gaucho1218
최종 변경자: gaucho1218,