Koa.js - 静态文件



静态文件是指客户端直接从服务器下载的文件。创建一个新目录,public。Express 默认情况下不允许您提供静态文件服务。

我们需要一个中间件来实现此目的。继续安装koa-serve

$ npm install --save koa-static

现在我们需要使用这个中间件。在此之前,创建一个名为 public 的目录。我们将在此处存储所有静态文件。这允许我们保持服务器代码安全,因为 public 文件夹以上的内容客户端将无法访问。创建 public 目录后,在其中创建一个名为hello.txt的文件,内容随意。现在将以下内容添加到您的 app.js。

var serve = require('koa-static');
var koa = require('koa');
var app = koa();

app.use(serve('./public'));

app.listen(3000);

注意 - Koa 会相对于静态目录查找文件,因此静态目录的名称不是 URL 的一部分。根路由现在设置为您的 public 目录,因此您加载的所有静态文件都将以 public 作为根目录。要测试这是否正常工作,请运行您的应用程序并访问https://127.0.0.1:3000/hello.txt

您应该得到以下输出。请注意,这不是 HTML 文档或 Pug 视图,而是一个简单的 txt 文件。

Static Files

多个静态目录

我们还可以使用以下方法设置多个静态资源目录:

var serve = require('koa-static');
var koa = require('koa');
var app = koa();

app.use(serve('./public'));
app.use(serve('./images'));

app.listen(3000);

现在,当我们请求文件时,Koa 将搜索这些目录并向我们发送匹配的文件。

广告