为什么需要使用Express静态文件?

3

抱歉问个愚蠢的问题,但我真的想知道为什么我们需要使用它。我知道静态文件是在加载时不会生成的文件,但必须在请求时发送到浏览器。

如果有人能为我解释这些问题,我将不胜感激。


1
您自己已经回答了这个问题。您需要使用express.static,以便您的服务器可以提供那些不是即时生成的文件。它处理所有文件加载并防止路径遍历攻击。 - Joe Clay
@JoeClay 谢谢,你的回答真的让我更清楚了。 - Nguyễn Bảo Dũng
1个回答

3
想象一种场景:您正在创建一个API,并希望从同一个Express应用程序中提供静态资源(HTML、CSS、JavaScript等)。
在这种情况下,定义一个文件夹非常有意义——通常称为“public”——并将所有先前提到的静态资源放在那里,例如:
app.use(express.static('public'))

现在我们可以用Node.JS/Express创建API了,将静态资源和应用动态加载的内容进行良好的分离。这是我使用的方式。希望这能有所帮助。

2
我还要补充一点,在生产环境中,不涉及Express来提供静态内容,而是使用Nginx来提供静态内容通常更有效率。 - Matthew Daly
我同意@MatthewDaly - Tamas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接