728x90
EntityTag의 줄임말로 말 그대로 entity에 대한 식별자로 캐시 유효성 검증에 사용됩니다. 데이터 요청의 트래픽을 줄이는 것에 도움을 줍니다.
종류
약한(weak) 검사: 'W/'로 시작되는 문자열로 리소스 내용이 유사한 경우 동일한 것으로 간주합니다.
강한(strong) 검사: 바이트 대 바이트로 엄격한 검사를 진행합니다.
생성
콘텐츠의 해시, 마지막으로 수정된 타임스탬프의 해시 혹은 개정번호를 이용하여 ETag를 만들어 냅니다.
검증
서버로 Get으로 검증 요청을 하며 요청 시 header에 'If-None-Match: etag값' 을 담아서 요청을 합니다.
서버에서는 클라이언트 내에 캐싱하고 있는 버전과 서버의 버전이 동일하면 '304 Not Modified'로 응답하며, 동일하지 않을 경우 '200 OK'로 응답합니다.
참고:
https://developer.mozilla.org/ko/docs/Web/HTTP/Headers/ETag
https://jeonyeohun.tistory.com/311
https://jizard.tistory.com/449
728x90
댓글