HTML 입문 | HTML5 API | Application Cache
application Cache API
application cache API는 웹 응용 프로그램을 캐시(cache) 하여, 인터넷 접속 없이 사용자가 접근할 수 있게 해준다.
따라서 application cache를 사용하면 웹 응용 프로그램의 오프라인 버전을 쉽게 만들 수 있다.
application cache를 사용해서 생기는 장점은 다음과 같다.
- 오프라인 접속 : 사용자가 웹 응용 프로그램을 오프라인(off-line)으로도 사용할 수 있다.
- 속도 : 캐시(cache)된 자원은 빠르게 로드(load)할 수 있다.
- 서버의 부하 감소 : 웹 브라우저는 서버의 자원에 변동이 있을 때만 자원을 갱신하면 된다.
application cache를 지원하는 주요 웹 브라우저의 버전은 다음과 같다.
API | ie | chrome | firefox | safari | opera |
---|---|---|---|---|---|
application cache | 10.0 | 4.0 | 3.5 | 4.0 | 11.5 |
cache manifest 파일
application cache를 사용하기 위해서는 먼저 cache manifest 파일을 작성해야 한다.
cache manifest 파일은 웹 브라우저에 캐시(cache) 해야 할 파일과 캐시하지 말아야 할 파일을 알려준다.
이러한 mainfest 파일은 다음과 같이 세 개의 세션(session)으로 이루어진다.
- CACHE MANIFEST : 처음 다운로드한 이후에 계속 캐시할 파일들을 기록한다.
- NETWORK : 서버와의 접속이 필요한 파일들을 기록하며, 이 파일들은 절대로 캐시되지 않는다.
- FALLBACK : 파일에 접속할 수 없을 때에 대체할 파일들을 기록한다.
캐시(cache)의 갱신
웹 브라우저는 다음과 같은 경우가 발생하면 캐시(cache)의 정보를 갱신하게 된다.
- 사용자가 웹 브라우저의 캐시를 강제로 지웠을 경우
- application cache가 프로그램 때문에 갱신됐을 경우
- cache manifest 파일이 수정됐을 경우
문법
CACHE MANIFEST
# 2016-03-22 v1.0.1
test.html
test.css
test.js
NETWORK:
test.jpg
FALLBACK:
/ offline.html
한 번 캐시 되면 서버상의 파일을 수정해도, 웹 브라우저는 사용자 측에 캐시 되어 있는 버전의 파일만을 보여준다.
따라서 서버상의 파일을 수정한 후에는 반드시 웹 브라우저가 캐시를 갱신하도록 만들어야 한다.
이때 가장 많이 사용되는 방법이 cache manifest 파일 내의 주석 부분을 수정하는 것이다.
일반적으로 갱신 날짜 및 버전 정보를 주석으로 표시하고, 이 부분을 수정하여 웹 브라우저가 캐시를 갱신하도록 유도한다.
최종 수정 : 2021-08-27