首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >强制浏览器清除缓存

强制浏览器清除缓存
EN

Stack Overflow用户
提问于 2009-12-18 00:23:37
回答 16查看 700.9K关注 0票数 327

有没有一种方法可以把一些代码放到我的页面上,这样当有人访问网站时,它就会清除浏览器缓存,这样他们就可以查看更改了?

使用的语言: ASP.NET、VB.NET,当然还有HTML、CSS和jQuery。

EN

回答 16

Stack Overflow用户

回答已采纳

发布于 2009-12-18 00:27:18

如果这是关于.css.js的更改,一种方法是“缓存崩溃”,即在每个版本的文件名后附加类似"_versionNo“的内容。例如:

代码语言:javascript
复制
script_1.0.css // This is the URL for release 1.0
script_1.1.css // This is the URL for release 1.1
script_1.2.css // etc.

或者,在文件名之后执行此操作:

代码语言:javascript
复制
script.css?v=1.0 // This is the URL for release 1.0
script.css?v=1.1 // This is the URL for release 1.1
script.css?v=1.2 // etc.

你可以查看这个link,看看它是如何工作的。

票数 397
EN

Stack Overflow用户

发布于 2009-12-18 00:26:20

查看cache-controlexpires元标记。

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">

<META HTTP-EQUIV="EXPIRES" CONTENT="Mon, 22 Jul 2002 11:12:01 GMT">

另一种常见的做法是将不断变化的字符串附加到所请求文件的末尾。例如:

<script type="text/javascript" src="main.js?v=12392823"></script>

票数 118
EN

Stack Overflow用户

发布于 2009-12-18 00:27:27

不是这样的。一种方法是在传递内容时发送适当的头部,以强制浏览器重新加载:

Making sure a web page is not cached, across all browsers.

如果你在SO上搜索"cache header"或类似的东西,你会找到ASP.NET特有的例子。

另一种不太干净但有时只能在服务器端控制头部的方法是向被调用的资源添加一个随机的GET参数:

代码语言:javascript
复制
myimage.gif?random=1923849839
票数 27
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1922910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档