2010-06-07 49 views
0

我試圖從後退按鈕導航時刷新頁面。從我的理解了解了一下後,我應該只需要將頁面標記爲不可緩存,但我無法使用任何瀏覽器來刷新頁面。這些是我目前得到的標題:需要什麼HTTP標頭刷新返回按鈕上的頁面

Cache-Control:no-cache 
Connection:keep-alive 
Content-Encoding:gzip 
Content-Length:1832 
Content-Type:text/html; charset=utf-8 
Date:Mon, 07 Jun 2010 14:05:39 GMT 
Expires:-1 
Pragma:no-cache 
Server:Microsoft-IIS/7.5 
Vary:Accept-Encoding 
Via:1.1 smoothwall:800 (squid/2.7.STABLE6) 
X-AspNet-Version:2.0.50727 
X-AspNetMvc-Version:2.0 
X-Cache:MISS from smoothwall 
X-Powered-By:ASP.NET 

爲什麼瀏覽器將此頁面從瀏覽器歷史記錄中拉出而不刷新它?

回答

0

想通了。這是我找到的工作:

Cache-Control:no-cache, no-store 
Connection:Close 
Content-Length:7683 
Content-Type:text/html; charset=utf-8 
Date:Wed, 09 Jun 2010 03:37:38 GMT 
Expires:-1 
Pragma:no-cache 
Server:ASP.NET Development Server/9.0.0.0 
X-AspNet-Version:2.0.50727 
X-AspNetMvc-Version:2.0 

用下面的ASP.NET代碼來實現:

Response.Cache.SetCacheability(HttpCacheability.NoCache); 
Response.Cache.SetAllowResponseInBrowserHistory(false); 
Response.Cache.SetMaxAge(new TimeSpan(0)); 
Response.Cache.SetNoStore(); 
Response.Cache.SetExpires(new DateTime(1940, 1, 1)); 
+0

這是不正確的,有了這個代碼的網頁過期警告將被顯示。你說過,你想要刷新頁面。 – 2010-12-27 09:04:47

+0

真的嗎?哪些瀏覽器會這樣做?我們已經有一段時間使用這段代碼了,它看起來像我們想要的那樣工作 - 即:在後退按鈕頁面被從服務器重新請求,而不是來自緩存。究竟是什麼意思,頁面過期警告 - 這是用戶會這樣? – 2011-01-05 01:22:15