gpt4 book ai didi

node.js - express JS : how to know if request is for static asset?

转载 作者:太空宇宙 更新时间:2023-11-03 22:15:15 25 4
gpt4 key购买 nike

我正在为某些特定任务编写中间件,当请求是静态 Assets 时,不应执行该中间件(来自客户端文件夹:app.use(express.static(path.join(__dirname, "../客户端")));)

那么我如何知道特定请求是针对静态 Assets 的还是从“客户端”文件夹提供的?

我有以下代码

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

我发现对 css/js 文件等静态资源的请求仍在通过 someCustomMiddleware() 进行。我的要求是 someCustomMiddleware() 不应处理静态 Assets 的请求。

最佳答案

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

例如。假设您的公共(public)文件夹有一些 css 文件夹,其中包含文件 style.css。假设您的路线如下所示。

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

如果您访问 /css/style.css,它将命中 express.static 并提供该文件,并且不会转到该 '/' 路线。

关于node.js - express JS : how to know if request is for static asset?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31117277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com