我创建一个简单的 Express 服务器并提供静态文件
const express = require('express');
const app = express();
app.use(express.static('public'));
app.listen(3000, () => {
console.log('Listening on port 3000')
})
当我前往 localhost:3000 时,公共(public)目录中的 index.html 会呈现路由“/”。我没有在 index.js 文件中明确写入路线。 Express 是如何知道这一点的?
我尝试将文件名从index.html更改为random.html,但出现错误。无法获取/
最佳答案
正如评论中提到的,app.use(express.static('public'))
负责此操作。这实际上将为项目中的 public
文件夹中的所有文件提供服务。如果您的 public
文件夹中有 index.html
,那么该文件将自动在 /
端点上提供。这是大多数网站遵循的约定,并记录在this SO post中。 .
这里是express.static(...)
的相关文档:https://expressjs.com/en/starter/static-files.html
关于node.js - Express如何知道这条路由?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54283189/