可安装:通过 Manifest 让网站能添加到桌面,拥有独立窗口与图标;离线可用:Service Worker 缓存资源与数据,弱网也能访问;推送:通过 Web Push 触达用户。
三者组合,让网页的服务能力向原生应用看齐,却省去了应用商店的分发门槛。
前提提醒:PWA 强制要求 HTTPS,未部署证书的站点无法使用 Service Worker。
把网站改造成 PWA 的核心步骤。
名称、图标、主题色、启动方式。
注册、生命周期、缓存策略。
静态资源与数据缓存策略。
订阅推送与消息服务端。
符合条件时引导用户安装。
用 Lighthouse 评估 PWA 达标度。
渐进式改造,快速见效。
部署 SSL 证书,这是所有 PWA 能力的前提。
配置应用信息与图标,让网站“可安装”。
先做静态资源缓存,再逐步做数据缓存与离线策略。
用 Lighthouse 检测达标项,补充推送等能力,引导用户安装。
不同资源用不同缓存策略。
| 资源类型 | 策略 | 说明 |
|---|---|---|
| 静态资源 | Cache First | 优先缓存,更新靠版本 |
| 页面文档 | Network First | 在线优先,离线兜底 |
| API 数据 | Stale While Revalidate | 先用缓存,后台更新 |
| 用户数据 | Network Only | 必须实时,不缓存 |
对多数内容型与工具型产品,PWA 足以胜任,且成本远低于原生。但深度硬件能力与商店分发仍是原生优势。
缓存策略 + 版本号 + 主动更新机制(update)配合使用,避免用户拿到旧资源。
能,但依赖浏览器支持与用户授权,触达率需结合场景评估。
没有负面影响,配合预渲染还能提升体验与性能,间接利于 SEO。
