This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

412 Precondition Failed

HTTP 412 Precondition Failed 클라이언트 오류 상태 코드는 대상 리소스에 대한 액세스가 거부되었음을 나타냅니다. 이는 GET 또는 HEAD 이외의 메서드에 대한 조건부 요청에서 If-Unmodified-Since 또는 If-Match 헤더에 정의된 조건이 충족되지 않을 때 발생합니다. 이 경우 요청(일반적으로 리소스 업로드 또는 수정)을 수행할 수 없으며 이 오류 응답이 다시 전송됩니다.

상태

http
412 Precondition Failed

예제

Precondition failed

http
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
ETag: W/"0815"

Avoiding mid-air collisions

ETagIf-Match 헤더를 사용하면 충돌이나 공중 충돌을 방지할 수 있습니다. 예를 들어, 일부 위키 페이지를 편집할 때 콘텐츠가 해시되어 성공적인 응답의 ETag에 입력됩니다.

http
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"

위키 페이지에 변경 사항을 저장할 때(데이터를 게시할 때), POST 요청에는 클라이언트가 마지막 편집에서 저장한 ETag 값이 포함된 If-Match 헤더가 포함되어 서버에서 리소스의 최신 상태를 확인합니다.

http
If-Match: "33a64df551425fcc55e4d42a148795d9f25f89d4"

해시 값이 일치하지 않으면 문서가 그 사이에 편집되었음을 의미하며, 이 경우 412 Precondition Failed 오류가 발생합니다.

명세서

Specification
HTTP Semantics
# status.412

같이 보기