Nodejs缓存

深入浅出Node.js(八):Connect模块解析(之二)静态文件中间件

血红的双手。 提交于 2019-12-09 16:50:02
上一篇 专栏 简单介绍了Connect模块的基本架构,它的执行模型十分简单,中间件机制也使得它十分易于扩展,具备良好的可伸缩性。在Connect的良好机制下,我们本章开始将逐步解开Connect生态圈中中间件部分,这部分给予Connect良好的功能扩展。 静态文件中间件 也许你还记得我曾经写过的 Node.js静态文件服务器实战 ,那篇文章中我叙述了如何利用Node.js实现一个静态文件服务器的许多技术细节,包括路由实现,MIME,缓存控制,传输压缩,安全、欢迎页、断点续传等。但是这里我们不需要去亲自处理细节, Connect 的 static 中间件为我们提供上述所有功能。代码只需寥寥3行即可: var connect = require('connect'); var app = connect(); app.use(connect.static(__dirname + '/public')); 在项目中需要临时搭建静态服务器,也无需安装apache之类的服务器,通过NPM安装Connect之后,三行代码即可解决需求。 这里需要提及的是在使用该模块的一点性能相关的细节。 动静分离 前一章提及, app.use() 方法在没有指定路由信息时,相当于 app.use("/", middleware) 。这意味着静态文件中间件将会在处理所有路径的请求。在动静态请求混杂的场景下