如何仅从某些路径使用 ExpressJS 提供静态文件,而不能为其他路径提供?
更具体地说,我想从除 /files
之外的所有路径提供静态文件。 (如果请求此路径,我只想编辑服务器上的某些文件)。
我有这段代码:
var express = require('express');
var app = express();
express.static(__dirname);
app.use(redirectUnmatched);
function redirectUnmatched(req, res) {
//Do something on server
console.log("req.url:"+req.url+"<br>"+__dirname);
}
let port = 80;
var server = app.listen(port);
但我真的不知道,如何编辑我的代码来做到这一点......谁能帮我?
谢谢!
最佳答案
只是定义 /files
在提供静态文件之前路由可能有效:
// Define `/files` route first
app.use("/files", function (req, res) {
return res.send("I will be served instead of a files directory");
});
// Static
app.use("/", express.static(__dirname));
关于javascript - 如何在某些路径上而不是其他路径上在 ExpressJS 中提供静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65115458/