에듀테크 프로젝트 대시보드
서비스 워커 (Service Worker)
fetch 이벤트를 감청해 캐시에서 응답을 줄지, 네트워크로 보낼지 직접 결정할 수 있어서
오프라인에서도 앱이 동작하는 PWA(Progressive Web App)의 핵심입니다.
caches.open()으로 만든 저장소로,
요청한 적 있는 응답 사본을 브라우저 디스크에 보관합니다. 서버가 죽거나 오프라인이어도 여기서 즉시 꺼내 씁니다.
install 단계에서
caches.addAll([...])로 핵심 파일을 미리 저장합니다.
새 버전이 배포되면 기존 탭이 남아있는 동안 waiting 상태로 대기하다가,
탭이 모두 닫히거나 skipWaiting() 호출 시 새 워커가 activate 됩니다.