asp.net 取消緩存相關(guān)問題說明
更新時間:2009年11月08日 23:17:46 作者:
asp.net 取消緩存相關(guān)問題說明,需要的朋友可以參考下。
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)服務(wù)器具端取消:
服務(wù)器端:
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();
}
}
最簡單的辦法 :-)
學(xué)CSDN的這個論壇,在URL后面隨機(jī)的加一些沒用的參數(shù),比如:
http://xxx/xxx/xxx.jpg?p=xxx
IE是用過URL來控制緩存的,這樣就解決了
(4)web.config可以設(shè)置吧?
2。
(1)客戶端緩存和我們常在代碼中使用的Cache對象,有什么差別,當(dāng)我們僅用了客戶端緩存時,他對我們在代碼中使用的Cache有沒有什么影響!
兩個完全不同的東西,Cache對象是給你自己緩存東西用的,好處是會自動清理掉過期的東西??蛻舳司彺媸荋TTP的一個規(guī)范,用于在客戶端緩存網(wǎng)頁的,有時候我們需要客戶端緩存提高瀏覽速度,減輕服務(wù)器負(fù)擔(dān),但有時候我們又需要在客戶端禁用緩存,以避免客戶端看到過期的信息
(2)當(dāng)客戶端瀏覽器被關(guān)閉時,要如何移除Cache中的值。當(dāng)用戶是正常注銷是可以做到,但是如果用戶是直接關(guān)閉瀏覽器要如何實現(xiàn)呢?
<body onbeforeunload="window.open('clear.aspx','','top=4000')">
(3)1.Page.Cache,Context.Cache,HttpRuntime.Cache是否引用同一個Cache對象.
2.它們之間的區(qū)別是什么?
3.它們的使用場合是什么?
它們指的同一個對象,在某個請求其間,Page.Cache和HttpContext.Current.Cache是有效的,至于這2者的區(qū)別,一般是由你調(diào)用的地方?jīng)Q定的,如果在Page里,那么用Page.Cache,如果在global.asax或自己的函數(shù)里,那么用后者
但如果你需要在某個事件,譬如基于Timer的處理函數(shù)里訪問,因為其時沒有HttpContext,那么用HttpRuntime.Cache
(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)服務(wù)器具端取消:
服務(wù)器端:
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();
}
}
最簡單的辦法 :-)
學(xué)CSDN的這個論壇,在URL后面隨機(jī)的加一些沒用的參數(shù),比如:
http://xxx/xxx/xxx.jpg?p=xxx
IE是用過URL來控制緩存的,這樣就解決了
(4)web.config可以設(shè)置吧?
2。
(1)客戶端緩存和我們常在代碼中使用的Cache對象,有什么差別,當(dāng)我們僅用了客戶端緩存時,他對我們在代碼中使用的Cache有沒有什么影響!
兩個完全不同的東西,Cache對象是給你自己緩存東西用的,好處是會自動清理掉過期的東西??蛻舳司彺媸荋TTP的一個規(guī)范,用于在客戶端緩存網(wǎng)頁的,有時候我們需要客戶端緩存提高瀏覽速度,減輕服務(wù)器負(fù)擔(dān),但有時候我們又需要在客戶端禁用緩存,以避免客戶端看到過期的信息
(2)當(dāng)客戶端瀏覽器被關(guān)閉時,要如何移除Cache中的值。當(dāng)用戶是正常注銷是可以做到,但是如果用戶是直接關(guān)閉瀏覽器要如何實現(xiàn)呢?
<body onbeforeunload="window.open('clear.aspx','','top=4000')">
(3)1.Page.Cache,Context.Cache,HttpRuntime.Cache是否引用同一個Cache對象.
2.它們之間的區(qū)別是什么?
3.它們的使用場合是什么?
它們指的同一個對象,在某個請求其間,Page.Cache和HttpContext.Current.Cache是有效的,至于這2者的區(qū)別,一般是由你調(diào)用的地方?jīng)Q定的,如果在Page里,那么用Page.Cache,如果在global.asax或自己的函數(shù)里,那么用后者
但如果你需要在某個事件,譬如基于Timer的處理函數(shù)里訪問,因為其時沒有HttpContext,那么用HttpRuntime.Cache
相關(guān)文章
asp.net生成高質(zhì)量縮略圖通用函數(shù)(c#代碼),支持多種生成方式
這兩天正在研究報表中餅圖的繪圖方法,文章中的某些做法值得參考.2008-08-08
ASP.NET單選按鈕控件RadioButton常用屬性和方法介紹
RadioButton又稱單選按鈕,其在工具箱中的圖標(biāo)為 ,單選按鈕通常成組出現(xiàn),用于提供兩個或多個互斥選項,即在一組單選鈕中只能選擇一個2014-04-04
asp.net(C#)生成Code39條形碼實例 條碼槍可以掃描出
這篇文章主要介紹了asp.net(C#)生成Code39條形碼實例 條碼槍可以掃描出。需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02
c#將Excel數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫的實現(xiàn)代碼
這篇文章主要介紹了c#將Excel數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫的實現(xiàn)代碼,有需要的朋友可以參考一下2013-12-12
ASP.NET Core中如何利用Csp標(biāo)頭對抗Xss攻擊
這篇文章主要給大家介紹了關(guān)于ASP.NET Core中如何利用Csp標(biāo)頭對抗Xss攻擊的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用ASP.NET Core具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
ADO.NET 讀取EXCEL的實現(xiàn)代碼((c#))
經(jīng)常需要在數(shù)據(jù)庫與Execl之間互導(dǎo)數(shù)據(jù)。net時代,ADO.NET可以使用使用Microsoft.Jet.OleDb訪問訪問Excel,網(wǎng)上已經(jīng)有很多類似的資源,最典型也是最簡單的可能如下:(asp.net環(huán)境)2012-12-12
深入解讀ASP.NET Core身份認(rèn)證過程實現(xiàn)
這篇文章主要介紹了深入解讀ASP.NET Core身份認(rèn)證過程實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10

