jquery.getJSON缓存问题

jquery请求本地json数据时,发现有缓存:

Status Code:200 (from disk cache)
 
状态 类型 说明
200   form memory cache  不请求网络资源,资源在内存当中,一般脚本、字体、图片会存在内存当中

200   form disk ceche 不请求网络资源,在磁盘当中,一般非脚本会存在内存当中,如css等(页面关闭磁盘缓存也不会被清除,只能强刷)
200   资源大小数值 从服务器下载最新资源
304   Not Modified  报文大小 请求服务端发现资源没有更新,使用本地资源

详情:https://blog.csdn.net/garrettzxd/article/details/80684880

 

去除缓存的两种方式:

1.$.getJSON(path, {time:new Date().getTime()},(config) => {

})
2.$.getJSON(path+new Date().getTime()+‘’, {time:new Date().getTime(),cache: false},(config) => {
})
原理都是在get请求路径拼接参数,从而每次都去服务重新获取数据
 
 
ajax请求,协商缓存设置

response.Headers["Last-Modified"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");//服务端上次修改文件的时间
response.Headers["ETag"] = id; //补充
response.CacheControl = "private";//缓存读取权限

 
 
posted @ 2020-05-15 17:36  榆木脑袋敲啊敲  阅读(187)  评论(0编辑  收藏  举报