如何使用express.js创建浏览器缓存资产

时间:2014-08-27 06:19:12

标签: node.js express http-headers http-caching

我希望浏览器缓存我的资产。所以我用:

var oneDay = 86400000;
app.use(express.static('public', { maxAge: oneDay }));

所以作为回应我看到了:

cache-control: public, max-age=86400000

但是当浏览器请求资产时,它仍然向服务器发出请求,并且通常会获得304未修改的响应,然后才从缓存中获取版本。

作为回应,我也看到了'Etag'和'Last-Modified'标题,也许他们是出于这种行为? (为什么我无法读取Last-Modified标头来检查它。

如果我理解正确,我第一次下载资源时会设置max-age作为响应,然后浏览器,而句点(由max-age设置)应该从缓存中获取,而不是向服务器发出任何请求。

我做错了什么?

我想知道人们如何使用express.js在生产中提供静态资产和索引文件?

0 个答案:

没有答案