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://: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 將搜尋這些目錄並向我們傳送匹配的檔案。

廣告