Sep 28, 2010, 11:55 PM
[CLOSED] Output Cache issue with Direct Method / Direct Event
Hi,
We are having issue implementing output cache with Direct Event(DE) / Direct Method(DM).
Check this URL http://64.34.225.139:222/testing/cache.aspx
Try this URL in IE with Chrome Frame. Let the page load completely. You will see a message "Ajax Call Complete" and then hit refresh. You will see script block returned by DM.
This is due to XHR request sent to top level url which invalidates the previous cache and on subsequent reload, loads the last response from server.
In other browsers Chrome or FF, we dont see the script block but instead Actual page. The interesting point here is, the page does'nt load from cache in other browsers too, instead it loads from the server again. This is because other browsers especially Chrome sends the request with if modified cache control header. And hence the reload. The resources may come from cache, but the actual page comes from server.
If you remove DM from the page, you will notice that, every subsequent request is loading from cache. You can try this with a simple Aspx page with a DM. I dont think you need a test page here. If u do lemme know, but I think its a pretty simple example.
One thing I can think of here is to send a random number in a param(not extraparams but querystring param) with every request of DE/DM. Page can be set to cache with VaryByParam.
We registered this as bug at chromium http://code.google.com/p/chromium/is...etail?id=55918 but in the end the process ended up not being a bug but a browser dependent feature.
Lemme know how to go about with this. With the size of our application, its important for us to implement Output Cache. I have extensively used DM & DE and cant step back on it now.
Thanks,
We are having issue implementing output cache with Direct Event(DE) / Direct Method(DM).
Check this URL http://64.34.225.139:222/testing/cache.aspx
Try this URL in IE with Chrome Frame. Let the page load completely. You will see a message "Ajax Call Complete" and then hit refresh. You will see script block returned by DM.
This is due to XHR request sent to top level url which invalidates the previous cache and on subsequent reload, loads the last response from server.
In other browsers Chrome or FF, we dont see the script block but instead Actual page. The interesting point here is, the page does'nt load from cache in other browsers too, instead it loads from the server again. This is because other browsers especially Chrome sends the request with if modified cache control header. And hence the reload. The resources may come from cache, but the actual page comes from server.
If you remove DM from the page, you will notice that, every subsequent request is loading from cache. You can try this with a simple Aspx page with a DM. I dont think you need a test page here. If u do lemme know, but I think its a pretty simple example.
One thing I can think of here is to send a random number in a param(not extraparams but querystring param) with every request of DE/DM. Page can be set to cache with VaryByParam.
We registered this as bug at chromium http://code.google.com/p/chromium/is...etail?id=55918 but in the end the process ended up not being a bug but a browser dependent feature.
Lemme know how to go about with this. With the size of our application, its important for us to implement Output Cache. I have extensively used DM & DE and cant step back on it now.
Thanks,
Last edited by Daniil; Sep 30, 2010 at 7:54 AM.
Reason: [CLOSED]