Express.js 静态文件

静态文件是客户端从服务器下载的文件。 创建一个新目录,public。 Express,默认情况下不允许我们提供静态文件。 需要使用以下内置中间件启用它。

app.use(express.static('public'));

注意 - Express 查找相对于静态目录的文件,因此静态目录的名称不是 URL 的一部分。

请注意,根路由现在设置为我们的 public 目录,因此加载的所有静态文件都将 public 视为根目录。 要测试它是否正常工作,请在新的 public 目录中添加任何图像文件并将其名称更改为“testimage.jpg”。 在我们的视图中,创建一个新视图并包含此文件,例如 -

html
   head
   body
      h3 Testing static file serving:
      img(src = "/jiyik_logo.png", alt = "Testing Image

express 静态文件

多个静态目录

我们还可以使用以下程序设置多个静态资产目录

var express = require('express');
var app = express();

app.use(express.static('public'));
app.use(express.static('images'));

app.listen(3000);

虚拟路径前缀

我们还可以为提供静态文件提供路径前缀。 例如,如果想提供像“/static”这样的路径前缀,则需要在 index.js 文件中包含以下代码

var express = require('express');
var app = express();

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

app.listen(3000);

现在,当需要包含一个文件时,例如,驻留在公共目录中的名为 main.js 的脚本文件,请使用以下脚本标记

<script src = "/static/main.js" />

当提供多个目录作为静态文件时,这种技术可以派上用场。 这些前缀可以帮助区分多个目录。

查看笔记

扫码一下
查看教程更方便