Express 静态文件
Node.js 教程
收录了这篇文章

在Express.js中,静态文件服务是一个非常常用的功能,它允许你的应用程序提供静态资源,如HTML、CSS、JavaScript文件、图片等,而无需为每个文件编写单独的路由处理程序。要实现这一点,你可以使用express.static中间件。

如何使用

首先,确保你已经安装了Express。如果还没有安装,可以通过npm进行安装:

npm install express

然后,在你的Express应用中,使用express.static来指定一个或多个静态资源目录。以下是一个简单的示例:

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

// 指定public目录作为静态资源目录
app.use(express.static(path.join(__dirname, 'public')));

// 假设你有一个index.html在public目录下
app.get('/', (req, res) => {
  res.sendFile(path.join(__dirname, 'public', 'index.html'));
});

const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`);
});

在这个例子中,express.static被用来设置名为public的目录作为静态资源目录。这意味着,当你访问http://localhost:3000/css/style.css或http://localhost:3000/images/logo.png这样的URL时,Express会自动查找并提供public/css/style.css和public/images/logo.png这些文件。

注意事项

  • express.static可以多次调用以设置多个静态资源目录。
  • 目录的顺序很重要。Express会按照你添加中间件的顺序来检查静态资源目录。第一个匹配到的文件会被返回,不会继续检查后续的目录。
  • 为了安全起见,避免将包含敏感信息或应用程序源代码的目录设置为静态资源目录。
  • 使用path.join来构建路径,以确保跨平台兼容性。

通过这种方式,你可以轻松地为你的Express应用提供静态文件服务,而无需为每个文件配置单独的路由。

修改时间 2024-05-29

声明:本站所有文章和图片,如无特殊说明,均为原创发布。商业转载请联系作者获得授权,非商业转载请注明出处。
随机推荐
Notifications API
WordPress 常用函数 / sanitize_user
表驱动方法
WordPress 侧边栏小工具
Node.js readline 模块
HTML textarea 文本输入框
CSS 媒体特性 prefers-color-scheme
HTML input checkbox 复选按钮