【发布时间】:2016-04-18 01:05:11
【问题描述】:
我的应用中有不同的路径,例如:
/a/a/:b/a/:/b/:c/:d
对于像/a 这样的路径,我使用:
app.use(express.static(path.join(__dirname, 'public')));
对于像/a/:b 这样的路径,我添加另一个这样的路径:
app.use('/a', express.static(path.join(__dirname, 'public')));
除了为每个路径添加express.static 之外,有没有办法通过使用正则表达式来使用一行代码来实现这一点。
比如:
app.use(/\/[a-z]*/, express.static(path.join(__dirname, 'public')));
// BTW, this doesn't work
为多个路径提供静态文件的最佳做法是什么?谢谢。
【问题讨论】:
-
你为什么不把你的静态文件存储在一个带有子文件夹 a/b/c/whatever 的文件夹中?
-
如果您的文件存储磁盘层次结构与 URL 路径层次结构相匹配,那么您可以将所有文件放在一个磁盘层次结构中,只需指定顶层即可对所有内容使用一个
express.static()调用。express.static()将为您完成多个级别。 -
@jfriend00 是的,通过在静态链接上加斜杠解决。
-
@dragfire - 这根本不是您在问题中向我们展示的内容,因此我们不知道您在源文件中所做的事情。无论如何,很高兴你弄清楚了。