最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

nodejs表示基于路由的动态静态文件夹

运维笔记admin10浏览0评论

nodejs表示基于路由的动态静态文件夹

nodejs表示基于路由的动态静态文件夹

我需要能够拥有多个静态(公共)文件夹,我可以使用以下方法实现:

app.use(express.static(path.join(__dirname, '/routes/mymod1/public'))); 
app.use(express.static(path.join(__dirname, '/routes/mymod2/public')));

这将合并2个文件夹,使它们显示为一个,但问题是如果我在两个文件夹中都有相同的文件名,那么最后一个文件将获胜。

我想做的是根据请求的路由动态路由静态请求。

例如,对/mymod1/test.html的静态请求将定向到/mymod1/public/test.html,对mymod2 / test.html的请求将定向到/mymod2/public/test.html

这可能吗 ??

回答如下:

当您使用express.static中间件时,它会尝试解析该文件(在mymod1中)并将其发回。如果没有找到文件,则下一个中间件是调用并尝试在mymod2中解析,因此只有第一个应该获胜。

如果要添加路由,可以将其精确定位为第一个参数:

app.use('/mymod1', express.static('...'))
发布评论

评论列表(0)

  1. 暂无评论