【发布时间】:2021-12-13 22:01:30
【问题描述】:
我正在尝试添加验证中间件以保护我的服务器数据。当我收到请求(http://localhost:3000/filepath)时,没有中间件的静态路由:
app.use(express.static('data'));
我得到一个状态 200 OK。但是当我尝试请求相同的路由时,但这次使用了另一个问题中推荐的简单中间件(Is it possible to use validation with express static routes?)
var staticMiddleware = function(req, res, next){
console.log("middleware")
next();
}
app.use(staticMiddleware, express.static('data'));
我找不到状态 404。
如何在 express.static 中间件之前向 app.use 添加另一个中间件?
【问题讨论】:
-
你的代码是正确的,你可以在
app.use中使用任意数量的中间件。如果您在同一个文件中的相同位置使用相同的代码,那么这很奇怪,您可能希望将path.join()用于静态文件夹(在您的情况下为data)并使文件夹路径正确 -
Lucas 看来我的回答有点误导,可能是中间件的顺序,如果
app.use(express.static('data'), staticMiddleware);有效,你可以试试吗?
标签: javascript express validation middleware static-files