Automatically clear IE cache method in js— Commonly used
For dynamic files, such as index.asp?id=... or index.aspx?id=... I trust experienced programs Everyone knows how to prevent browsers from caching data.
But for static files (css, jpg, gif, etc.), under what circumstances do we need to prohibit browsers from caching them, and how to do it?
Method 1: We can use a simple method to complete it in Dojo: the preventCache attribute is included in dojo.xhrGet (including post) and other methods. The meaning of this attribute: "The browser cache is enabled by default, otherwise it will be passed Automatically add different parameters to ensure browser cache invalidation" We only need to assign this attribute to: "true".
Method 2: document.write("
The 113 of ver=113 is the version number, which is generally a development version number generated by CVS or other tools.
This truly caches static files when they should be cached, gets the latest version when the version is updated, and updates the cache
for images to effectively utilize and update the cache.
js. Clear browser cache 2 In order to reduce the network transmission pressure between the browser and the server, static files, such as js, css, and modified pictures are often cached, that is, the HTTP of these files Add the Expires and Cache-Control parameters to the response header, and specify the cache time, so that the browser will not issue any HTTP requests to the server (except forced refresh) within a certain period of time, even if the server's js or css or images are displayed during this period. The file has been updated many times, but the data in the browser is still the old data that can be cached initially. Is there a way for the browser to get the latest modified data?
Yes, the method is to use ajax Request the latest file from the server, and add the request headers If-Modified-Since and Cache-Control, as follows:
$.ajax({
type: "GET",
url: "static/cache.js",
dataType: "text",
beforeSend :function(xmlHttp){
xmlHttp.setRequestHeader("If-Modified-Since","0");
xmlHttp.setRequestHeader("Cache-Control","no-cache");
}
});
jquery is used here.
This way the browser will replace the old local file with the latest one. Of course, another problem here is that js must know which js, css, and pictures have been updated by the server. This can be solved by using cookies and time versions.
jquery has ifModified and cache parameters since 1.2, so you don’t need to add them yourself. header
ifModified Boolean Default: false
Allow the request to be successful only if the response has changed since the last request. This is done by checking the Last-Modified header. Default value is false, ignoring the header.
cache Boolean Default: true
Added in jQuery 1.2, if set to false it will force the pages that you request to not be cached by the browser.
$.ajax({
type: "GET",
url: "static/cache. js",
dataType: "text",
cache:false,
ifModified :true
});