当用户刷新站点时,我的站点中存在缓存svg问题。但是当用户硬刷新时,问题就不存在了。
因此,当用户尝试刷新站点时,我希望它进行硬刷新。我该怎么办?
我正在使用打字稿。
有2个组成部分,
我也尝试过
<meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate, post-check=0, pre-check=0" />
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
他们都没有工作。
答案 0 :(得分:1)
尝试为资产添加一些时间戳。
src="your.svg?ts=321321323"
答案 1 :(得分:1)
您可以使用CSS
使JS
/ version control
在客户端上保持最新状态。
使用时间戳的优势在于,它不会强制最终用户每次刷新或登陆页面时都下载资源,而是仅在有更新时才下载文件。您可以手动执行此操作,例如:
<link rel="stylesheet" href="css/file.css?version=0.0.1" />
当然,这样做的问题是,每次更改时都必须记住要这样做。但这确实意味着用户将只下载已更改的特定文件。您可以使用服务器端语言(如PHP)创建变量,然后简单地附加到?version=
进行空白更新,只需更改变量值即可更新。但是,每次更新都会更新每个文件。
<?php $version = '0.0.1'; ?>
<link rel="stylesheet" href="css/file.css?version=<?php echo $version; ?>" />
<link rel="stylesheet" href="css/file2.css?version=<?php echo $version; ?>" />
<link rel="stylesheet" href="css/file3.css?version=<?php echo $version; ?>" />
可能有一种与香草JavaScript
相关的方法,但是我对JavaScript的了解比对PHP的了解要有限得多。
答案 2 :(得分:0)
只需将唯一查询添加到您的html src属性的网址,例如使用时间戳:url +'?' + Date.now()
每次都会生成新的编号,因此您将获得新的文件版本。