我有一个CMS应用程序代码,该代码调用Response.Cache.SetNoStore()所有请求,如果我是对的,这将防止代理/ cdn缓存那些页面/内容。因此,我有条件地调用以下代码:
Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetMaxAge(new TimeSpan(0, 30, 0));
Response.Cache.SetValidUntilExpires(true);
Run Code Online (Sandbox Code Playgroud)
但这不会从响应标头中删除无存储参数,这是返回的http标头:
Cache-Control:public, no-store, must-revalidate, max-age=1800
Run Code Online (Sandbox Code Playgroud)
因此,我的问题是,我该如何实用地删除nostore参数?如果这不可能,那么我如何/在哪里解析/修改http-header,因为我尝试在PagePreRender事件上进行解析并且没有应用nostore参数...这使人怀疑这是哪个生命周期附加到标题?