node响应头缓存设置
2024-09-03 02:51:33
我把react项目分成4个板块,在路由的顶层
今天在手机上打开react项目的时候,发现平级路由跳转时某一个图片较多的板块图片总是渲染得很慢,这分明是重新发起请求了。
然后我先查一下react-router是否有什么我还没了解到的问题,可是只查到有人说动态修改查询参数的时候不重新渲染,以及“同级路由跳转理所当然会重新渲染,必要时把某些组件挂载为子路由组件”之类的。
然后我打开我的node服务器查看,发现果然每次跳转时服务器都log下了一堆请求,这就奇怪了。
然后我查了下,发现原来是我的服务端脚本里没有对图片文件的cache control设置,所以默认都没有设置缓存。。。晕菜~~~
在某些资源的响应报头添加cache-control就好了
然后再打开项目跳转,缓存到本地了...
case '.jpg':
case '.png':
case '.gif':
fs.readFile('.'+pathname,(err,data)=>{
if(err) console.log(err);
res.writeHead(200, {
"Content-Type": {
".gif":"image/gif",
".png":"image/png",
".jpg":"image/jpeg",
}[ext],
"Cache-Control":"max-age=100000"
});
res.write(data);
res.end();
});
break;
case '.html':
case '.css':
case '.js':
fs.readFile('.'+pathname,(err,data)=>{
if(err) console.log(err);
res.writeHead(200, {
"Content-Type": {
".html":"text/html",
".css":"text/css",
".js":"application/javascript",
}[ext],
"Cache-Control":"max-age=600"
});
res.write(data);
res.end();
});
break;
case 'ico':break;
最新文章
- Java正则速成秘籍(二)之心法篇
- 使用Emit把Datatable转换为对象集合(List<;T>;)
- TCP的定时器
- NPOI导出Excel合并表头写入公式
- SGU 422 Fast Typing(概率DP)
- cocos2d-x之悦动的小球
- hadoop(一):深度剖析hdfs原理
- 寻找第K大的数
- QMessageBox中按钮的汉化
- RMI、RPC、SOAP通信技术介绍及比对
- 实战weblogic集群之创建domain,AdminServer
- CentOS 6.5下安装MySql 5.7
- 17 个 Linux 下用于 C/C++ 的最好的 IDE
- 《JavaScript 闯关记》之 DOM(下)
- HDU ACM 1066 Last non-zero Digit in N!
- C文件IO
- Cocos Creator学习一:学习目录以及v2.0 必须关注的网址
- linux统计使用最多的10个命令
- 【读书笔记】iOS-发布你的应用
- 机器学习:python使用BP神经网络示例