Today, almost all projects are submitted through ajax. During the test, I found that the data obtained after each submission is the same. debugging can eliminate the background code issue, so the problem must be at the front-end. Each time the cache is cleared, a new data will be generated. Therefore, the browser cache is the final problem. After a long struggle, I finally solved the problem. Here I will summarize it.
We all know that ajax can increase the page loading speed mainly because it reduces the loading of duplicate data through ajax, that is, it caches the data to the memory while loading the data, once the data is loaded, as long as the page is not refreshed, the data will be cached in the memory. When the submitted URL is consistent with the historical URL, you do not need to submit data to the server, that is, you do not need to obtain data from the server. This reduces the server load and improves the user experience, but we cannot obtain the latest data. To ensure that the information we read is up-to-date, We need to disable its caching function.
There are several solutions:
1. Add anyAjaxObj. setRequestHeader ("If-Modified-Since", "0") before ajax sends a request ").
2. Add anyAjaxObj. setRequestHeader ("Cache-Control", "no-cache") before ajax sends a request ").
3. Add a random number after the URL: "fresh =" + Math. random ();.
4. Add the time after the URL: "nowtime =" + new Date (). getTime ();.
5. If jQuery is used, you can directly set $. ajaxSetup ({cache: false }). In this way, all the ajax operations on the page will execute this statement, so it does not need to be saved.
Save records.