본문 바로가기

공부/웹

If-None-Match, 412 Status Code, Etag

412 Precondition Failed

대상 자원에 대한 액세스가 거부되었음을 나타낸다. If-Unmodified-Since 또는 If-None-Match 헤더로 정의 된 조건이 충족되지 않을 때, GET 또는 HEAD 이외의 메소드에 대한 조건부 요청에서 발생한다.

If-None-Match

If-None-Match HTTP 요청 헤더는 요청을 조건부로 만든다. 해당 헤더는 주로 Etag 값으로 이루어진다. 클라이언트가 GET 및 HEAD 메소드로 요청을 하면, 서버는 지정된 것과 일치하는 ETag가 없을 경우 200 OK와 요청된 자원을 다시 보낸다. Etag 값이 일치할 경우 서버는 304 Not Modified 상태 코드만을 발송한다. 304 코드를 받은 클라이언트는 캐쉬에 저장된 자원을 사용한다. 서버 측 변경을 적용하는 POST, PUT과 같은 메소드의 경우 상태 코드 412 Precondition Failed를 반환한다.

Etag

ETag HTTP 응답 헤더는 특정 버전의 리소스에 대한 식별자다. 요청 자원의 내용이 변경되지 않은 경우 전체 응답을 보낼 필요가 없으므로 클라이언트 측의 캐시를 사용하도록 유도한다.

https://code-examples.net/ko/docs/http/status/412

'공부 > ' 카테고리의 다른 글

[tomcat] 에러 내용 및 버전 정보 삭제  (0) 2020.02.07
[Docker] i/o timeout 에러  (0) 2019.12.27
웹 동작과정  (0) 2019.07.25