Express JS:如何知道请求是否为静态资产?

我正在为一些特定的任务编写中间件,当请求的是静态资源时(从客户端文件夹:app.use(express.static(path.join(__ dirname,“../client”)));

那么我怎么能知道这个特定的请求是针对静态资源还是从“客户端”文件夹提供?

我有下面的代码

app.use(express.static(path.join(__dirname, "../client"))); app.use(someCustomMiddleware()); 

我看到,像CSS / JS文件静态资产的请求仍然通过someCustomMiddleware()。 我的要求是someCustomMiddleware()不应该处理对静态资产的请求。

只需将其添加到其他路线之前。 如果请求一个静态项目,那么它会去app.use(express.static(path.join(__dirname, "../client"))); 首先,然后是你的路线。

防爆。 假设你的公共文件夹里有一个css文件夹,里面有一个文件style.css 。 假设你的路线是这样的。

 app.use(express.static(path.join(__dirname, "../public"))); app.use(someMiddleware); 

如果你访问/css/style.css ,它会打express.static并提供文件,并不会去'/'路线。