Pat*_*ham 15 deployment caching firebase-hosting
我有一个使用create-react-app构建的网站,并在Firebase Hosting上托管.如何指定浏览器缓存需要在新部署后更新,并且理想情况下仅适用于自上次部署以来已更改的页面,资产和样式表?
有没有办法访问部署ID并在标头中包含该(或任何其他唯一标识符),以便浏览器可以与本地存储或缓存中的内容进行比较,并确定是否需要进行硬刷新?我查看了Firebase部署以及完整配置文档,但没有提及如何访问托管元数据,如上次部署时间.
将Cache-Control值设置为max-age=[any number]似乎并不理想,因为它忽略了下一次部署何时发生(除非有常规计划,否则可能无法开始).
Pat*_*ham 29
我想到了.不得不firebase.json根据这个Github评论更新文件:
{
"hosting": {
"headers": [
{ "source":"/service-worker.js", "headers": [{"key": "Cache-Control", "value": "no-cache"}] }
]
}
}
Run Code Online (Sandbox Code Playgroud)
小智 5
请在 firebase.json 中设置“max-age=0”。
"headers": [
{
"source": "/service-worker.js",
"headers": [
{
"key": "Cache-Control",
"value": "no-cache, no-store, must-revalidate"
}
]
},
{
"source": "**/*.@(jpg|jpeg|gif|png|svg|webp|js|css|eot|otf|ttf|ttc|woff|woff2|font.css)",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=0"
}
]
}
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8031 次 |
| 最近记录: |