How to prevent the browser from caching a json file
The easiest way is to append the source string with some random parameter, which gets ignored on the server side
<script src="mySaveFiles.json?nocache=123" ></script>
One solution would be to generate the script element using JavaScript and append the current time like this:
var el = document.createElement( script );el.src = 'mySaveFiles.json?nocache=' + (new Date()).getTime();document.head.appendChild( el );
That way, the browser will never cache the JSON-file as it appears to be a different file (due to the parameter) in every call.
One of my favorites is just htaccess (if this is possible for you, I can't see that)
Disable cache for multiple extensions
<FilesMatch ".(pl|php|cgi|spl|scgi|fcgi|json)$"> Header unset Cache-Control</FilesMatch>
Disable cache for just 1 extension
<Files .json> Header unset Cache-Control</Files>
I found it here: http://www.queness.com/post/5421/17-useful-htaccess-tricks-and-tips
Two options:
- Add a mySaveFiles.json?t=timestamp query parameter to the end of the url.
- Pull the file in with the XmlHttpRequest object (you still may need to add a timestamp depending on the server).