HTTP/HTTP 헤더

[HTTP] HTTP 캐시 - 검증 헤더와 조건부 요청 (1)

Boradoris 2023. 1. 21. 23:32

캐시 시간 초과

  • 캐시 유효 시간이 초과해서 서버에 다시 요청하면 다음 두 가지 상황이 나타난다.
    • 1. 서버에서 기존 데이터를 변경함
    • 2. 서버에서 기존 데이터를 변경하지 않음

 

 

 

  • 캐시 만료 후에도 서버에서 데이터를 변경하지 않음
  • 생각해 보면 데이터를 전송하는 대신에 저장해 두었던 캐시를 재사용할 수 있다.
  • 단, 클라이언트의 데이터와 서버의 데이터가 같다는 사실을 확인할 수 있는 방법 필요

 

 

검증 헤더 추가

첫 번째 요청

 

 

두 번째 요청 - 캐시 시간 초과

 

 

 

 

 

 

 

검증 헤더와 조건부 요청

정리

  • 캐시 유효 시간이 초과해도 서버의 데이터가 갱신되지 않으면
  • 304 Not Modified + 헤더 메타 정보만 응답(바디X)
  • 클라이언트는 서버가 보낸 응답 헤더 정보로 캐시의 메타 정보를 갱신
  • 클라이언트는 캐시에 저장되어 있는 데이터 재활용
  • 결과적으로 네트워크 다운로드가 발생하지만 용량이 적은 헤더 정보만 다운로드
  • 매우 실용적인 해결책

 


출처 : https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC