我有一个 React 应用程序,每次部署新版本时,一些用户由于浏览器缓存而无法获取新版本。
谁能告诉我如何在每次部署新版本软件时清理浏览器缓存?
最佳答案
缓存是浏览器向用户提供的一项功能。由于安全原因,您无法使用 JavaScript 清理缓存。
清理缓存意味着您可以操作用户计算机上的物理文件,如果有一天您可以这样做,这将是一个巨大的安全漏洞。
检查this answer来强化我所说的。
但是,您可以告诉浏览器永远不要像这样缓存您的页面(另请查看 this 文档):
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
或者通过在所有文件(javascript、图像、字体等)中关联哈希标签名称来更改浏览器已知的文件,并在每次部署新版本的软件时更改该哈希,如下所示:
<script src="script.js?version={versionNumber}">
<img src ="imageName.png=version={versionNumber}">
关于javascript - 每次部署新版本的 Web 应用程序时如何清理浏览器缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57993791/