Koa.js - 静态文件

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

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

$ npm install --save koa-static

现在我们需要使用这个中间件.在此之前创建一个名为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的一部分.根路由现在设置为您的公共目录,因此您加载的所有静态文件都将公共作为根目录.要测试这是否正常,请运行您的应用并访问 https://localhost:3000/hello.txt

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

静态文件

多个静态目录

我们还可以使用 : 设置多个静态资产目录;

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

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

app.listen(3000);

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