用于缓存firebase请求的云功能的示例,仅在成功编辑配置文件后重新缓存

时间:2017-07-22 13:42:32

标签: firebase caching google-cloud-functions firebase-hosting

在我的应用中,用户个人资料向公众开放,仅由个人资料所有者更新。

个人资料网址为example.com/profile?user=@user.me

并基于文档https://firebase.google.com/docs/hosting/functions。我可以缓存函数的响应JSON,在本例中是公共配置文件。这将为我节省大量的云功能执行和Firebase数据库带宽

当用户更新他的个人资料时,我想重新缓存CDN中的个人资料。

我认为这可以通过让用户在成功更新其个人资料后在请求标头中重新请求其公开个人资料来完成。

当用户之后访问相同的个人资料时,他会看到新版本。

可能吗?或者不是Cache-Control: no-cache的使用方式。

1 个答案:

答案 0 :(得分:2)

firebaser here

Cloud Functions,Firebase Hosting及其CDN之间的集成目前是纯粹的基于时间的缓存。在Cloud Functions中设置缓存标头时,CDN会将您的响应放入其指定时间段的边缘缓存中。一旦过期,CDN边缘将停止从缓存中提供内容,并在该边缘的用户请求时从服务器请求新的副本。

我们知道拥有一个API来告诉CDN刷新此内容将允许许多其他用例。但目前这不在Firebase Hosting的范围内。