关于浏览器缓存的思考
问题情境
开发中要实现一个非原生pdf预览功能,pdf链接放在一个固定的后台地址,当重新上传pdf后,预览pdf仍然是上一次的pdf内容,没有更新为最新的内容。
查看接口返回状态码为 200 OK(from disk cache),
表示此次pdf返回内容是直接从磁盘中读取的缓存,而没有请求服务器,因此pdf内容没有及时更新。
在开发中,还会看到以下几种状态码:
总结一下3者的区别:
Status Code | 说明 |
---|---|
200 OK(from memory cache) | 不请求服务器,从内存中读取缓存。 kill进程后,即浏览器关闭后,数据将不存在。 |
200 OK(from disk cache) | 不请求服务器,从磁盘中读取缓存,kill进程后,数据依然存在。 |
304 OK | 请求服务端,发现资源没更新,从缓存中读取数据 |
200 OK | 服务器返回最新资源 |