2012-08-29 14 views
5

Tarayıcıda önbelleğe alınmış belirli bir aspx sayfası istiyorum. Bir ASPX sayfası olarak sahip olmak için geçerli nedenlerim var ve tarayıcıda önbelleğe almam gerekiyor.Tarayıcının önbelleklemesi URL'deki Parametreleri hesaba katıyor mu? (ASPX sayfası)

Şimdi, sunucu önbelleğinde, önbelleğe alma parametresini değiştirebilirim. Tarayıcı, sayfa yanıtlarını önbelleğe alırken de parametreleri hesaba katıyor mu?

E.g. Aşağıdaki iki yanıt, tarayıcısında iki farklı önbellek öğesi olarak kaydedilecek mi? http://mypage.com/page.aspx?Param=1 ve http://mypage.com/page.aspx?Param=2

cevap

5

bunların ayrı olarak önbelleğe alır, böylece Evet, tarayıcı 2 farklı kaynaklar gibi bu adresler görür (vaka önbellek başlıklarında bunu gösterir).

Fiddler'u kullanarak kolayca test edebilirsiniz.

+0

İşaretçinizin kemancı için teşekkürler. Bu konu için kullanmadım olsa da, sahip olduğum diğer şeyler için kesinlikle yardımcı oldu. –

2

Düzenleme 2: How to instruct browsers to ignore GET parameters when caching a resource, benzer bir sorunu açıklar ve bu sayfaların her ikisini de aynı sayfa olarak önbelleğe almak istiyorsanız, bu zor olabilir. Onları farklı olmasını istiyorsanız, varsayılan davranışı ile belirlerseniz ancak

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="CACHE"> 

etiketi açıkça bunu yapmak için tarayıcı anlatmak için ayarlanmış olduğundan emin olun gerekir.

Orjinal cevap:

siz istediğiniz seçimi size. Eğer farklı önbelleğe olanlar istiyorsanız Örneğin, VaryByParam = "param" ile bir çıkış önbelleği ayarlayın: Eğer param seçeneğiyle göre değişir kullanmak istemiyorsanız, bu sayfaların her ikisi de aynı önbelleğe alır

<%@ OutputCache Duration="60" VaryByParam="Param" %> 

. Birden çok parametreye göre değişiklik yapmak isterseniz, bunları noktalı virgülle ayırın. çıkış önbelleğe alma hakkında

<%@ OutputCache Duration="60" VaryByParam="*" %> 

için bilgiler: Eğer hepimizi Parametreleri ile * joker değişir istiyorum http://msdn.microsoft.com/en-us/library/y96218s9.aspx

Düzenleme: Sadece sorunuzu tekrar okumak. Bu, tarayıcı tarafında değil, sunucu tarafında önbelleğe almaya neden olur.

İlgili konular