当前位置:网站首页>PWA 应用 Service Worker 缓存的一些可选策略和使用场景
PWA 应用 Service Worker 缓存的一些可选策略和使用场景
2022-08-08 10:02:00 【InfoQ】
- Network only:内容必须始终是最新的,适用于电商的付款和结帐,余额报表等场景。
- Network falling back to cache:优先提供最新的内容。 但是,如果网络出现故障或不稳定,则可以提供稍旧的内容。适用场景有及时的数据,价格和费率(需要免责声明),订单状态等。
- Stale-while-revalidate:可以立即提供缓存内容,但以后应该使用更新的缓存内容。适用场景有新闻提要,产品列表页面,留言等。
- Cache first, fall back to network:内容是非关键的,可以从缓存中提供以提高性能,但 Service Worker 应偶尔检查更新。适用于 App shells 和 Common resources.
- Cache only: 适用于内容极少发生变化的静态资源。
{
"index": "/index.html",
"assetGroups": [
{
"name": "app",
"installMode": "prefetch",
"resources": {
"files": [
"/favicon.ico",
"/index.html",
"/*.css",
"/*.js",
"/manifest.webmanifest"
]
}
}
],
"dataGroups": [
{
"name": "basesites",
"urls": [
"*/basesites?fields=baseSites\\(uid,defaultLanguage\\(isocode\\),urlEncodingAttributes,urlPatterns,stores\\(currencies\\(isocode\\),defaultCurrency\\(isocode\\),languages\\(isocode\\),defaultLanguage\\(isocode\\)\\),theme,defaultPreviewCatalogId,defaultPreviewCategoryCode,defaultPreviewProductCode\\)*"
],
"cacheConfig": {
"maxSize": 1,
"maxAge": "1d",
"strategy": "performance"
}
}
]
}
./node_modules/.bin/ngsw-config ./dist/<project-name> ./ngsw-config.json [/base/href]
dist/<project-name>
**
: 匹配 0 个或多个路径段
*
: 匹配 0 个或多个字符,不包括 /
?
: 只匹配一个字符,不包括 /
!
:prefix 将模式标记为否定,这意味着只包含与模式不匹配的文件
/**/*.html
: 匹配所有 HTML 文件
/*.html
:匹配根目录下的 HTML 文件
!/**/*.map
: 排除所有的 sourcemaps
边栏推荐
猜你喜欢
A concise tutorial on expanding (increasing capacity) of VMWare Esxi virtual system data storage
Simple Mixed Operations Calculator
Loadrunner12.0.2安装及中文语言包安装(汉化)
面试突击72:输入URL之后会执行什么流程?
Practical Case: Building Churn Prediction Models with PySpark ML
Mobile/Embedded-CV Model-2017: MobelNets-v1
Vulnhub靶机:GEMINI INC_ 1
snmptrapd+snmptt接收告警并用py脚本发送
利用图像二维熵实现视频信号丢失检测(Signal Loss Detection)
oracle中联表相关思考
随机推荐
COMSOL Multiphysics 6.0软件安装包和安装教程
正确使用灯光 安全文明出行
Practical Case: Building Churn Prediction Models with PySpark ML
MySQL源码解析之执行计划
牛刀小试基本语法,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本语法和变量的使用EP02
d实验新异常
移动端/嵌入式-CV模型-2019:MobelNets-v3
Detailed Explanation of Gradient Vanishing and Gradient Explosion Problems
Redis 定长队列的探索和实践
idea安装步骤
深度解析网易严选和京东的会员体系,建议收藏
面试突击72:输入URL之后会执行什么流程?
Redis 定长队列的探索和实践
利用图像二维熵实现视频信号丢失检测(Signal Loss Detection)
hdu4635 Strongly connected(tarjan计算强连通通分量+缩点+思想)
STL underlying implementation principle
VPP静态映射实现DNAT
使用C# 调用api接口获取法定节假日(百度api)
Web optimization experience (6) - optimization closed-loop practice
正向传播和反向传播