有没有办法清除用户浏览器的页面,或者说不使用缓存?

时间:2008-09-22 15:58:53

标签: http asp-classic

在经典ASP中是否有一个命令我可以用来告诉浏览器不要从它的缓存中拉出页面,或者不缓存,或清除我页面的缓存?

6 个答案:

答案 0 :(得分:9)

您可以使用HTML元标记:

<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="Fri, 01 Jan 1999 1:00:00 GMT" />
<meta http-equiv="Last-Modified" content="0" />
<meta http-equiv="Cache-Control" content="no-cache, must-revalidate" />

或者您可以使用ASP响应标头:

<% 
   Response.CacheControl = "no-cache"
   Response.AddHeader "Pragma", "no-cache"
   Response.Expires = -1
%>

答案 1 :(得分:2)

不是asp相关,这是一个HTTP问题。您可以通过修改http缓存的某些方面来实现,例如Cache-Control,etag,Expires等。阅读RFC2616,尤其是Caching in HTTP并设置相应的标题。

答案 2 :(得分:2)

忽略所有人,告诉您使用<meta>元素或Pragma。它们非常不可靠。您需要设置适当的HTTP标头。有关如何确定适合您的HTTP标头的详细教程可用hereCache-Control: no-cache可能就是您所需要的,但请阅读本教程,因为有许多项目特定的原因可能会让您想要不同的东西。

答案 3 :(得分:0)

如果你把

Response.Expires = -1

在您的经典ASP页面中,它将指示浏览器不要缓存内容。如果用户点击“返回”或以其他方式导航到该页面,浏览器将从服务器刷新页面。

答案 4 :(得分:-1)

可以通过确保根据需要为Reponse.cachecontrol,response.expires等设置正确的值来完成。此链接可能有助于理解它们的含义。 http://aspjavascript.com/lesson07.asp

答案 5 :(得分:-2)

由于不同浏览器处理缓存的方式,需要使用Expires和no-cache命令。这是article显示正确的方法。