我想向我的网站添加一个网站图标(使用 Node.JS 和 Express 用 JavaScript 编写)。互联网上的资源指向使用 favicon-serve 中间件。Express 生成器还包含此中间件。
目前,我正在使用以下代码行提供静态文件。
app.use(express.static('./public'));
所以我favicon.ico
放入了/public
文件夹,favicon 像它应该的那样工作(不使用 favicon-serve 中间件)。
所以我的问题是:为什么要使用网站图标中间件?为什么不把它和其他静态资源(.css / .png / ...)放在一个公共文件夹中?
编辑:我收到了一些反对票,抱歉,如果这是一个过多的“RTM”问题,但作为初学者(在 JavaScript/Node.js 中),很容易迷失在外部模块中。很难找到不是“安装这个模块,学习使用这个模块,完成”的 Node.js 资源——作为一个初学者,我经常想知道有人如何在没有另一个外部模块的情况下解决问题,即使你最终无论如何都要使用该模块。
该模块的文档对此进行了回答:
- 用户代理频繁且不加选择地请求 favicon.ico,因此您可能希望通过在记录器中间件之前使用此中间件将这些请求从日志中排除。
- 该模块将图标缓存在内存中,通过跳过磁盘访问来提高性能。
- 该模块提供基于图标内容的 ETag,而不是文件系统属性。
- 该模块将与最兼容的 Content-Type 一起使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句