之前搭建博客的时候,没有考虑静态资源缓存的情况,
那时候自认为利用浏览器自己的缓存机制就好了,
今天添加博客友联时,一位好心的博友提醒我说我的博客没有添加静态资源缓存
我当时一头雾水,这个不是浏览器自己的机制吗?
然后经过一波查询,发现自己的理解一直错了。
所谓的缓存机制就是一些资源请求的时候,设置了返回头,
Cache-Control
这种情况是没有设置缓存的。
每次资源相当于重新去拉取一次。
设置了之后,浏览器会根据这个字段进行数据的缓存,然后通过status code 中的 from memory cache
得知 我们请求时缓存的数据了。
我们的后端用的是Koa
静态文件的组件为koa-static,
刚好koa-static提供了缓存的参数,
我们直接加上即可:
const static = require("koa-static");
//设置静态资源的路径
const staticPath = "./public";
let opts = {
maxage: 2592000000, //静态资源30天缓存 实际上 = 2592000秒
};
app.use(static(path.join(__dirname, staticPath), opts));
koa-static的版本的版本号为5.0.0
参考文档:https://www.npmjs.com/package/koa-static/v/5.0.0
然后关于浏览器缓存机制的文章:https://blog.csdn.net/weixin_47450807/article/details/122680032
完事我们的博客速度 咔咔的 快了很多