我使用Flutter web设计了一个web应用程序。我用Firebase主机托管了它。但在部署到firebase后,它没有显示我的代码更改。它仍然在显示我的旧版本的web应用程序。但是我可以通过清除浏览器或ctrl+refresh
的缓存来解决这个问题。但我不想每次部署到firebase时都这么做。如何停止在缓存中保存web应用程序?
发布于 2020-04-18 09:47:00
将版本号附加到main.dart文件。每次进行需要浏览器清除现金的更改时,请在上载更改之前更改附加的版本号,以便浏览器知道有更改,并需要清除现金。例如:
第一个版本:
<script src="main.dart.js?version=1" type="application/javascript"></script>
下次进行更改时:
<script src="main.dart.js?version=2" type="application/javascript"></script>
诸若此类。检查此link。
发布于 2020-08-16 12:29:38
另一种方法是防止通过HTTP标头进行缓存。对于Firebase主机,这将是:https://firebase.google.com/docs/hosting/full-config#headers
我想您可以在firebase.json
的站点入口中设置如下内容
"headers": [
{
"source": "**",
"headers": [
{
"key": "Cache-Control",
"value": "no-cache"
}
]
}
]
https://stackoverflow.com/questions/61286756
复制相似问题