我在Firebase上运行了PWA。我的图像文件托管在Firebase存储上。我注意到我的浏览器没有保存从存储系统加载的文件的缓存。浏览器会为每次页面刷新请求文件。这会导致不必要的延迟和流量。
我的JS脚本从Firebase存储的下载链接加载文件,例如:https ://firebasestorage.googleapis.com/v0/b/discipulado-7b14b.appspot.com/o/book3.png?alt=media&token=65b2cde7-c8a4 -45da-a743-401759663c17。
我可以缓存那些请求吗?
cacheControl用于存储:https : //firebase.google.com/docs/reference/js/firebase.storage.SettableMetadata#cacheControl
cacheControl
您可以通过托管更好地服务,并且使用firebase CLI进行部署非常简单。我认为默认情况下,托管中图像的Cache- Control为2小时,您可以使用.json全局增加它。
https://firebase.google.com/docs/hosting/full- config#headers
托管可以扩展您的站点并将其移动到更接近需求的不同边缘节点。存储空间仅限于存储桶,但您可以为欧洲指定一个存储桶,为中国指定一个存储桶,为北美指定一个存储桶,等等。
存储对于用户文件上传来说更好,托管对于静态内容更好(尽管我认为它们正在使用云功能推出动态托管)