If Fiddler doesn't see a hit the browser is not even asking for the page. Meaning the browser has the page cached.
I think if you don't want GET responses to cache you should force the content to not cache explicitly by adding expire headers to your page.
You can use:
Response.ForceReload()
in Web Connection which adds headers to pages that cause the page not to cache. Add that to your OnProcessInit() in your Process class to make it global for every request.
FWIW, I don't use this and I don't see cached pages either, but then I'm pretty careful that GET content always is unique so multiple requests to the same page (IOW, a cached page) won't be a problem. This should only ever matter if the item changes frequently, which shouldn't happen often. If they do the ForceReload() headers should prevent the server and client from caching the response.
+++ Rick ---
GET requests are SUPPOSED to cache as they are supposed to be remote resources. Newer Browsers are MUCH more agressive about caching. I suspect the difference you see might be because you're using different browsers.
+++ Rick ---
I really would like to understand whats going on in Win2008 server. I WinXP the application functions as expected. In Win2008 the requests for scripted pages hit the Foxpro server the first time a page is requested. The second time there is no line in Fiddlers log and not hit on Foxpro server, yet the (wrong) response shows up in browser (IE, Firefox and Chrome behave similarly). In IE I have selected "Check for newer versions of stored pages = Always", in Firefox I don't save any history. Where could those wrong pages come from if IIS doesn't cache them?
Caching isn't controlled exclusively by the server, but by browser and server together. If you're seeing a no-cache header that means content is not cached by IIS in any way.
IIS can and will cache GET based dynamic content only if you send very specific HTTP headers and set various specific values to the cache manager. Web Connection doesn't set those special headers unless your code actually sends it, so it's highly unlikely that IIS is caching the content. You can use Fiddler or Firebug/Chrome Tools to monitor what response is received from the server to see actually happens with caching.,
+++ Rick ---
How can I disable IIS caching of dynamic Webconnect content in Server 2008? I have tried setting "Expire Web Content Immediately" in IIS Manager but this has no effect. I can see in Fiddler that no "no-cache" header is present and Fiddlers Caching tab states "This response does not specify an explicit expiration time and does not specify a Last-Modified date.".
Rick Strahl West Wind Technologies Where do you want to surf today? | Reader Version: 5.0 |
from Maui, Hawaii