0
我發展我的ASP.NET 4.5應用程序客戶端緩存。我設置了一個web服務。 jQuery使用GET Ajax調用訪問webservice。該函數有一個'id'參數,併爲每個id返回不同的內容。響應與304 - 使用ASP.NET Web服務
我想同時緩存服務器和客戶端的數據。在客戶端,我已經知道如何使用'CacheDuration',但問題出在客戶端。我使用HttpFox來獲取每個響應的標題。
我設置在函數的開頭下面的代碼:
HttpCachePolicy cache = HttpContext.Current.Response.Cache;
cache.SetCacheability(HttpCacheability.Private);
cache.SetExpires(DateTime.Now.AddMinutes((double)10));
cache.SetMaxAge(new TimeSpan(0, 0, 10));
FieldInfo maxAgeField = cache.GetType().GetField(
"_maxAge", BindingFlags.Instance | BindingFlags.NonPublic);
maxAgeField.SetValue(cache, new TimeSpan(0, 10, 0));
我想要做的就是防止再次發送請求的相同ID的客戶端,並做就是咱們說.. 10分鐘。因此,在第一次調用請求將被製成,我們得到的響應200.在第二次響應頭應該是304
現在上面的代碼沒有做到這一點,我想知道如何做到這一點。同樣,我正在談論返回304的客戶端緩存,所以它希望再次訪問服務器以獲取相同的「ID」,直到緩存過期。
我知道,它可以使用的代碼,所以請不要提交解決方案的IIS型來完成。
需要你的幫助來解決這個問題。
我怎樣才能將其設置爲被緩存到10分鐘,可以給我的例子,我會嘗試 –
請參閱上面的編輯.. –
我無法訪問webservice中的'響應',任何我需要導入使用它? –