koa-static 不遵循最大年龄

koa-static not following max-age

我正在使用 koa-static 来为我的资产提供服务。 我已将 max-age 设置为 60000 毫秒的一分钟(如文档中所述)

出于测试目的,我在页面中使用大图像作为背景,但似乎每次打开页面时浏览器仍会重新下载...

相关代码如下:

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

app.use(serve('./public', {
  maxage: 60000,
}))

我该如何解决这个问题?

您确定这不是您的浏览器而不是 koa-static 的问题吗?我按原样尝试了您的示例,但我没有使用浏览器而是使用 curl 来检查 headers:

如果你 curl -I http://localhost:3000/img.png

您会看到 max-age header 已根据需要设置为一分钟。 cache-control 似乎设置为我们想要的,所以一定是您的浏览器对 header 做了一些棘手的事情。例如,如果您使用 chrome,它会在某些情况下设置 max-age=0:

Chrome doesn't cache images/js/css

希望对您有所帮助!

您应该 koa-etag,只需在您的项目中添加示例代码即可。