📜  ExpressJS-提供静态文件(1)

📅  最后修改于: 2023-12-03 14:41:05.324000             🧑  作者: Mango

ExpressJS-提供静态文件

当你在web开发中想要提供静态文件时,例如html、css、javascript或图像文件,你可以使用ExpressJS中的中间件功能来帮助你简化这个过程。

使用ExpressJS来提供静态文件

在ExpressJS中,你可以通过使用内置的express.static中间件来提供静态文件。这个中间件将请求映射到指定目录下的文件。以下代码演示了如何将public目录下的所有文件和子目录映射到应用程序中的根目录下的/static路径。

const express = require('express');
const path = require('path');
const app = express();

// 指定静态文件目录
app.use('/static', express.static(path.join(__dirname, 'public')));

// 在端口3000运行服务器
app.listen(3000, () => {
  console.log('Server is running on port 3000');
});

如果你想要提供favicon.ico文件,可以将它放到public目录下。在使用express.static中间件时,它默认也会提供favicon.ico文件,以便于web浏览器能够自动找到文件。

静态文件映射的优先级

当你使用express.static来提供静态文件时,它会先检查请求的文件是否存在于指定目录下。如果存在,就直接提供文件。如果不存在,就将请求传递给下一个中间件。

总结

ExpressJS使得提供静态文件变得轻松简单。使用express.static中间件,你只需要提供文件存储的目录,即可在应用程序中提供静态文件。这个中间件非常适合那些需要提供图像、css、javascript或html文件的web应用程序。