如何在登录操作后控制页面的可缓存性

本文关键字:缓存 控制 登录 操作 | 更新日期: 2023-09-27 18:35:31

我有这个代码:

Response.Cache.SetExpires(DateTime.Now.AddMinutes(60));
Response.Cache.SetCacheability(HttpCacheability.Public);

我正在尝试在客户端浏览器以及客户端浏览器和服务器之间的任何其他代理上缓存整个页面。

在一个用户登录之前,一切都运行良好。执行此操作后,所有用户的标题中都有用户名和注销按钮。

如何解决此问题?

我想我有两个选择:

  1. 缓存整个页面,标题上没有用户信息。然后,发出异步请求以获取用户的信息
  2. 每次用户登录时编写一个cookie,并使用此cookie控制CDN缓存(如果没有cookie https://docs.fastly.com/guides/caching/how-do-i-use-a-cookie-as-a-cache-key 则只需缓存)

还有其他解决方案吗?

如何在登录操作后控制页面的可缓存性

利用 Akamai 中的 ESI 功能。