注销后如何清除浏览器缓存(内存/磁盘缓存)?

时间:2021-03-17 10:33:21

标签: javascript asp.net-mvc asp.net-core browser-cache

我使用asp net core mvc + js。我的一种页面有缓存。

a = "Hello my name is Amar. How can I help you?"
doc = nlp(a)
for tok in doc: 
    print(tok.text, "-->",tok.dep_,"-->", tok.pos_)

用户在此页面注销时遇到问题。由于页面被缓存,用户在注销后会看到他的帐户。如果刷新页面缓存清除并且用户看不到帐户。

当注销单击时,我在 js 上尝试 location.reload(); 但在服务器上注销工作之前重新加载工作。我尝试更改 Vary 标头,但我更改了仅在注销后重定向的 Vary 页面

注销后如何清除缓存?有什么想法吗?

2 个答案:

答案 0 :(得分:0)

正如大王所说,如果开启了客户端缓存,在服务端是没有办法告诉客户端的。唯一的方法就是告诉CX清除缓存。由于一旦浏览器遵守了您在此处发送的缓存规则,那么您必须收回缓存规则的唯一机会就是下次浏览器请求该页面时。

通常,如果您希望动态页面保持动态,动态页面不应尝试设置客户端缓存。

答案 1 :(得分:0)

我在微软网站 https://docs.microsoft.com/en-us/aspnet/core/performance/caching/response?view=aspnetcore-5.0#responsecache-attribute 上找到了答案 他们说不要缓存使用用户信息的内容。

我在没有帐户信息的情况下缓存页面的各个部分。 我用

<cache expires-after="" />

谢谢大家