HTTP/HTTP 헤더

HTTP 프로토콜 If-Unmodified-Since헤더

hippo 데브옵스 2022. 6. 25. 16:53
  • 헤더 이름에서 알수 있듯이 If-Modified-Since 헤더의 반대

  • If-Modified-Since 헤더는 변경되었는지를 체크하는 것이고, If-Unmodified-Since 헤더는 변경되지 않았는지를 체크

  • If-Unmodified-Since 헤더는 PUT 메소드를 이용해서 웹서버의 컨텐츠를 수정하려 할때 사용하면 좋은 것

  • 변경되지 않은 올드한 컨텐츠의 내용을 바꾸려고 할때 올드한 컨텐츠인지 아닌지를 체크하는 과정에서 활용

  • If-Unmodified-Since 요청 헤더 필드는 조건부로 만드는 방법과 함께 사용 → 요청된 리소스가 필드에 지정된 시간 이후 수정되지 않은 경우 서버는 If-Unmodified-Since 헤더가 없는 것처럼 요청된 작업을 수행

  • 요청된 변형이 지정된 시간 이후에 수정된 경우 서버는 요청된 작업을 수행해서는 안됨 → 412 응답 코드 반환

  • 412 응답 코드는 Precondition Failed 에러 메시지로 선결 조건이 실패하였다는 의미

    # If-Unmodified-Since 형식
    "If-Unmodified-Since" ":" HTTP-날짜
    
    # 예시
    If-Unmodified-Since: 1994년 10월 29일 토요일 19:43:31 GMT

  • 요청이 정상적으로(즉, If-Unmodified-Since 헤더 없이) 2xx 상태가 아닌 다른 결과를 초래하는 경우 If-Unmodified-Since 헤더는 무시되어야 함

  • 지정된 날짜가 유효하지 않으면 헤더가 무시됨


If-Unmodified-Since 헤더를 사용 설명

  1. 컨텐츠 변경 시 : 412 Precondition Failed 에러 메시지 전달
  2. 컨텐츠 미 변경 시 : 200 OK 와 함께 전체 데이터 전송