모든 요청을 cache-first로 두면 PWA가 아니라 오래된 화면이 된다

캐시는 빠르게 보이게 하는 장치이지만, 데이터 성격별로 신선도 요구가 다르다.

요청 종류권장 전략오프라인 처리위험 신호
앱 shell, CSS, JSprecache / cache-first방문 전에도 기본 화면 유지배포 후 낡은 asset 고착
이미지와 폰트stale-while-revalidate이전 이미지 표시큰 파일 무제한 캐시
문서 페이지network-first + fallbackoffline page 또는 stale page404 대신 빈 화면
사용자별 APInetwork-first명시적 stale 표시개인 데이터가 오래 남음

빠른 화면

반복 방문 자산은 캐시에 둔다.

정확한 데이터

변하는 데이터는 네트워크를 먼저 본다.

실패 UX

네트워크 실패 시 재시도와 stale 표시를 제공한다.