URL时间戳作用
作用:为了防止浏览器缓存。缓存易引起新资源无法加载,还是从缓存中拿旧资源
URL后面添加随机数或时间戳通常用于防止浏览器(客户端)缓存页面。 浏览器缓存是基于URL进行缓存的,如果页面允许缓存,则在缓存时效前再次访问相同的URL,浏览器就不会再次发送请求到服务器端,而是直接从缓存中获取指定资源。
而当URL 的末尾追加了随机数或时间戳,就会保证每次都会实际生成新请求且 Web 服务器不会尝试缓存来自服务器的响应。
实际应用
缓存问题在ie下就会突显出来,刷新页面浏览器不会重新从后台获取请求,而是从缓存中取出
处理方法:一般在请求拦截器中做处理,在请求的url后加上时间戳
如下
axios.interceptors.request.use((request) => {
let separator = request.url.indexOf('?') === -1 ? '?' : '&'
request.url = request.url + separator
request.url = request.url + 'noCache=' + new Date().getTime()
return request
})