url加时间戳的好处

1,227 阅读1分钟

为什么要加时间戳

在同一url重复发起请求的时候可能会报304错误

如果客户端发送了一个带条件的GET 请求且该请求已被允许,而文档的内容 (自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个304状态码。

简单的表达就是:服务端已经执行了GET,但文件未变化。

这个时候需要加上时间戳或者随机数,这样浏览器每次都会以为是一个新的请求所以不会读取缓存

另一方面

URL后面加随机数通常用于防止客户端(浏览器)缓存页面,浏览器缓存是根据URL来进行的。 如果页面允许缓存,则在一定的时间内(缓存时效时间内),再次访问相同的URL,浏览器 就不会再次发送请求到服务器,而是直接从缓存中获取指定资源。

因此加时间戳或随机数保证每次请求都走到了服务器,是最新的。

this.$http.post(`admin/api?t=${new Date().getTime()}`)