검증헤더와 조건부 요청
캐시 시간 초과.
캐시 유효시간이 초과해서 서버에 다시 요청이 오면?
-서버에서 기존 데이터를 변경.
-서버에서 기존 데이터를 변경하지 않음.
2가지 경우가 나타난다.
-데이터가 다르면 어쩔 수 없고.
-같은 데이터를 또 받는다?
다시 쓰면 되는데. 단, 서버데이터 로컬캐시 데이터가 같다는 "검증"이 필요.
헤더에
cache-control:max-age=60
Last-Modified:2020년 11월 10일 10:00:00
-최종 Last-Modified!!!!!!!!
그래서 클라이언트가
if-modified-since: 2020년 11월 10일 10:00:00
넣어서 보낸다.
서버: 서버에서 확인을 한다. 어? 똑같네? "검증"
그러면
HTTP/1.1 304 Not Modified
Content-Type:image/jpge
cache-control:max-age=60
Last-Modified:2020년 11월 10일 10:00:00
Content-Length:34012
근데! 바디가 없다. HTTP Body가 없어. 헤더만 있어.
네트워크 부하가 확 줄어.
네트워크 : 어? 304 Not Modified네??
캐시를 다시 셋팅하고, 불러와서 쓴다.
-캐시 유효 시간이 초과해도, 서버 데이터가 갱신되지 않으면
-304 Not Modified + 헤더 메타 정보.(바디X)
-클라는 응답헤더라 캐시 메타정보 갱신
-클라는 캐시에 저장되어 있는 데이터 재활용
-매우 실용적이고, 다운이 발생하지만 "헤더"만, 매우 가벼움.
'웹 프로그램' 카테고리의 다른 글
ETag(Entity Tag) (0) | 2021.05.16 |
---|---|
검증헤더 (0) | 2021.05.16 |
HTTP 헤더 - 캐시 (0) | 2021.05.16 |
쿠키 (0) | 2021.05.16 |
인증 (0) | 2021.05.16 |