【发布时间】:2019-10-25 03:21:46
【问题描述】:
我最近使用 Cloud Functions 和 Firebase 托管实现了 SSR。
当构建 JS 包时,它会收到一个缓存突发后缀 (main.1.js)。
在我的函数中,我有以下代码用于缓存云函数的结果
res.set('Cache-Control', 'public, max-age=300, s-maxage=300');
在部署过程中,我先部署托管,然后部署云功能
firebase deploy --only hosting:production && gcloud functions deploy ssr --runtime nodejs8 --trigger-http --source dist/server
firebase 托管部署将 main.1.js 替换为 main.2.js。
由于缓存爆裂,文件现在有所不同(main.2.js),但因为云功能又被缓存了 5 分钟 - 我在访问网站时遇到错误(因为缓存版本中引用了 main.1.js的功能,不再可用)。
您将如何解决此类问题?我可以有两个活动部署并一个接一个地激活吗?
【问题讨论】:
-
我知道这是 2 年前的事了,但你有没有找到一个干净的解决方案?我现在正面临着这个确切的问题!
标签: firebase caching google-cloud-functions firebase-hosting server-side-rendering