概述stale-if-error 策略在网络失败时回退到缓存的旧内容,有助于提升可用性与体验稳定性。策略示例async function staleIfError(event, cacheName = 's-ie-v1') { const cache = await caches.open(cacheName); try { const res = await fetch(event.request); await cache.put(event.request, res.clone()); return res; } catch { const cached = await cache.match(event.request); if (cached) return cached; return new Response('', { status: 503 }); } } self.addEventListener('fetch', event => { const url = new URL(event.request.url); if (url.pathname.startsWith('/api/')) event.respondWith(staleIfError(event)); });

发表评论 取消回复