使用 glob 模式匹配从长期缓存中排除 sw.js
Exclude sw.js from the long term caching with glob pattern matching
为了启用长期缓存,根据 Firebase documentation,我在 headers 配置中有这个:
"headers": [
{
"source": "**/*.@(jpg|jpeg|gif|png|js|css)",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=172800"
}
]
}
]
但我还为该应用程序提供 sw.js(服务工作者),我根本不想对其进行缓存。首先想到的是将其从 glob 匹配中排除,我需要帮助。否则,如果您认为有更好的方法,请告诉。谢谢
修改了模式并添加了新模式,为 sw.js
指定 no-cache
"headers": [
{
"source": "**/!(sw).@(jpg|jpeg|gif|png|js|css)",
"headers": [{ "key": "Cache-Control", "value": "max-age=31536000" }]
},
{
"source": "**/sw.js",
"headers": [{ "key": "Cache-Control", "value": "no-cache" }]
}
]
为了启用长期缓存,根据 Firebase documentation,我在 headers 配置中有这个:
"headers": [
{
"source": "**/*.@(jpg|jpeg|gif|png|js|css)",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=172800"
}
]
}
]
但我还为该应用程序提供 sw.js(服务工作者),我根本不想对其进行缓存。首先想到的是将其从 glob 匹配中排除,我需要帮助。否则,如果您认为有更好的方法,请告诉。谢谢
修改了模式并添加了新模式,为 sw.js
no-cache
"headers": [
{
"source": "**/!(sw).@(jpg|jpeg|gif|png|js|css)",
"headers": [{ "key": "Cache-Control", "value": "max-age=31536000" }]
},
{
"source": "**/sw.js",
"headers": [{ "key": "Cache-Control", "value": "no-cache" }]
}
]