通过http header 设置缓存
以 nodejs 做服务器举例:
// mime.js 按照文件后缀名来判断response的ContentType
exports.types = {
'jpg': 'image/jpeg',
'json': 'application/json'
}
// config.js 匹配到有缓存策略的文件,设置缓存时间
exports.Expires = {
fileMatch: /^(gif|png|jpg|js|css)/ig,
maxAge: 60 * 60 * 24 * 365 // 一年
}
一、 设置浏览器强缓存
使用Expires和Cache-Control实现浏览器的强缓存
// app.js 启动文件
var http = require('http')
var url = require('url')
var fs = require('fs')
var path = require('path')
var mime = require('./mime').types
var config = require('./config')
var PORT = 8000
var server = http.createServer(function (request, response) {
var pathname = url.parse(request.url).pathname // 获取文件名
var realPath = 'assets' + pathname // 获取文件的实际位置
var ext = path.extname(realPath) // 获取文件名后缀
ext = ext ? ext.slice(