ExpressJS app.use

时间:2018-04-01 02:15:00

标签: javascript node.js express

我试图学习ExpressJS,但我遇到了这段代码。我似乎无法理解app.use功能,文档对我来说还不清楚。调用app.use时,此特定示例代码中/ public目录究竟发生了什么?

Folder sentMail = store.getFolder( "[Gmail]" ).getFolder( "Sent Mail" );

1 个答案:

答案 0 :(得分:1)

这很简单 - 您正在设置可通过HTTP访问的公共目录。

因此,http://localhost:3000/public/abc.jpg之类的内容会从公用文件夹中为您提供abc.jpg

app.use('/public', express.static('public'))

行只是意味着 - 匹配以/public开头的任何路径,如:

http://localhost/public/*.jpg

或任何其他扩展程序 - 将从publicexpress.static('public'))文件夹中选择该文件并提供该文件。

该行

app.use(express.static(__dirname + '/public'))

表示 - 匹配任何路径,如果在public目录中找到文件,则通过HTTP提供。

您可以使用这两行 - 差异是网址中的/public部分。

文档非常清楚:https://expressjs.com/en/starter/static-files.html