gpt4 book ai didi

asp-classic - 如何防止经典 ASP 应用程序上的页面缓存?

转载 作者:行者123 更新时间:2023-12-01 07:20:21 24 4
gpt4 key购买 nike

我需要一些页面不是 要缓存在经典 ASP 应用程序上,但我已经尝试了所有可能的 header 组合,但似乎没有任何效果:

Response.Expires         = -1
Response.ExpiresAbsolute = Now() - 1
Response.CacheControl = "no-cache; private; no-store; must-revalidate; max-stale=0; post-check=0; pre-check=0; max-age=0"
Response.AddHeader "Cache-Control", "no-cache; private; no-store; must-revalidate; max-stale=0; post-check=0; pre-check=0; max-age=0" ' Same as previous line, I know, just in case.
Response.AddHeader "Pragma", "no-cache"
Response.AddHeader "Expires", "-1"

我也尝试重新启动网站和 IIS,但无济于事。当我离开页面并使用浏览器的后退按钮返回时,它不会重新加载。

我在这里想念什么?

编辑 : 经过大量的谷歌搜索,我发现并实现了 this JavaScript solution ,它不是防弹的,因为它是客户端的,我更喜欢服务器端的解决方案,但它可以完成工作!

不过,我想听听任何服务器端选项。

最佳答案

您是在浏览器返回按钮的结果与 HTTP 缓存有关的印象下操作的,事实并非如此。

后退按钮的提供由浏览器决定,这是从 HTTP 堆栈的角度来看应用程序。应用程序没有义务考虑用于呈现窗口内容的任何 http 请求的缓存要求。事实上,许多浏览器都能够显示通过 http 以外的其他协议(protocol)传递的内容。

考虑使用后退按钮的最常见场景。用户从网络搜索引擎(google、bing、...)获得一些搜索结果,单击其中一个结果,很快发现内容不是他们要查找的内容,然后单击返回按钮。为了优化用户体验,大多数浏览器在从页面导航时会保留页面的许多资源(甚至是呈现页面的窗口)。然后可以通过重新组装这些资源甚至简单地使原始窗口再次可见来实现后退按钮。

关于asp-classic - 如何防止经典 ASP 应用程序上的页面缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12292346/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com