I\'m wondering if there is a way how to detect when a response is returned from a local cache? Is it possible?
The solution should be general and work for unconditi
Check to see if the status code returned is 304 (not modified) in the onreadystatechange function. Something along the lines of:
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==304)
{
alert("Cached");
}
}
Apparently we can also use the Resource Timing API to determine whether something was served from browser cache; if the transferSize is 0 (and the encodedBodySize is >0) then that's a cache hit.
That seems like a better solution than the others, as long as you're dealing with a browser that supports it.
Ref: https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming/transferSize
The answer is Date header
e.g.