程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> 設置ASP.NET頁面不被緩存(客戶端/服務器端取消緩存方法)

設置ASP.NET頁面不被緩存(客戶端/服務器端取消緩存方法)

編輯:ASP.NET基礎
復制代碼 代碼如下:
/// <summary>
/// 設置頁面不被緩存
/// </summary>
private void SetPageNoCache()
{
Response.Buffer = true;
Response.ExpiresAbsolute = System.DateTime.Now.AddSeconds(-1);
Response.Expires = 0;
Response.CacheControl = "no-cache";
Response.AppendHeader("Pragma", "No-Cache");
}

1、取消緩存
(2)客戶端取消
復制代碼 代碼如下:
<html>
<head>
<meta http-equiv="Expires" CONTENT="0">
<meta http-equiv="Cache-Control" CONTENT="no-cache">
<meta http-equiv="Pragma" CONTENT="no-cache">
</head>

(3)服務器具端取消:
服務器端:
復制代碼 代碼如下:
Response.Buffer = true;
Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
Response.Cache.SetExpires(DateTime.Now.AddDays(-1));
Response.Expires = 0;
Response.CacheControl = "no-cache";
Response.Cache.SetNoStore();

Global裡面:
復制代碼 代碼如下:
protected void Application_BeginRequest(Object sender, EventArgs e)
{
HttpContext.Current.Response.Cache.SetNoStore();
}
<%@ OutPutCache Location="None"%>

頁面基類:
復制代碼 代碼如下:
public class PageBase : Page
{
public PageBase() {}
protected override OnLoad( EventArgs e ) {
Response.Cache.SetNoStore();
base.OnLoad();
}
}

最簡單的辦法 :-)
學CSDN的這個論壇,在URL後面隨機的加一些沒用的參數,比如:
http://xxx/xxx/xxx.jpg?p=xxx
IE是用過URL來控制緩存的,這樣就解決了
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved