- Koa.js 教程
- Koa.js - 首頁
- Koa.js - 概述
- Koa.js - 環境
- Koa.js - Hello World
- Koa.js - 生成器
- Koa.js - 路由
- Koa.js - URL 構建
- Koa.js - HTTP 方法
- Koa.js - 請求物件
- Koa.js - 響應物件
- Koa.js - 重定向
- Koa.js - 錯誤處理
- Koa.js - 級聯
- Koa.js - 模板
- Koa.js - 表單資料
- Koa.js - 檔案上傳
- Koa.js - 靜態檔案
- Koa.js - Cookie
- Koa.js - 會話
- Koa.js - 身份驗證
- Koa.js - 壓縮
- Koa.js - 快取
- Koa.js - 資料庫
- Koa.js - RESTful API
- Koa.js - 日誌記錄
- Koa.js - 腳手架
- Koa.js - 資源
- Koa.js 有用資源
- Koa.js - 快速指南
- Koa.js - 有用資源
- Koa.js - 討論
Koa.js - 快取
快取是指儲存可重用響應以加快後續請求的過程。每個瀏覽器都自帶 HTTP 快取的實現。我們只需要確保每個伺服器響應都提供正確的 HTTP 標頭指令,以指示瀏覽器何時以及快取響應多長時間。
以下是將快取包含在 Web 應用中的一些好處:
降低網路成本。如果您的內容被快取,您需要為每個後續請求傳送的內容更少。
提高網站速度和效能。
即使客戶端離線,也可以提供您的內容。
我們將使用 koa-static-cache 中介軟體在我們的應用中實現快取。使用以下命令安裝這些中介軟體:
$ npm install --save koa-static-cache
轉到您的 app.js 檔案,並將以下程式碼新增到其中。
var koa = require('koa');
var app = koa();
var path = require('path');
var staticCache = require('koa-static-cache');
app.use(staticCache(path.join(__dirname, 'public'), {
maxAge: 365 * 24 * 60 * 60 //Add these files to caches for a year
}))
app.listen(3000);
koa-static-cache 中介軟體用於在客戶端快取伺服器響應。cache-control 標頭根據我們在初始化快取物件時提供的選項進行設定。我們將此快取響應的過期時間設定為 1 年。以下是我們在檔案被快取前後傳送的請求的比較。
在該檔案被快取之前,返回的狀態程式碼為 200,表示成功。響應標頭包含有關要快取的內容的多條資訊,並且還為內容提供了ETag。
下次傳送請求時,會同時傳送 ETtag。由於我們的內容在伺服器上沒有更改,因此其對應的 ETag 也保持不變,客戶端被告知它本地儲存的副本與伺服器提供的副本是最新的,應使用本地副本,而不是再次請求。
注意 - 為了使任何快取檔案失效,您只需要更改其檔名並更新其引用即可。這將確保您有一個新檔案傳送給客戶端,並且客戶端無法從快取中載入它。
廣告