HTTP缓存 - 设置Cache-Control Header后,资产不从浏览器缓存中提供

时间:2017-09-13 11:56:53

标签: javascript node.js http browser-cache cache-control

初始请求Initial Request 第二次请求Second Request 我正在使用节点模块(express-cache-ctrl)来启用代理上的缓存。

app.use(cache.public(3600));

我的静态资产上有一个带有max-age的Cache-control标头。我无法弄清楚为什么他们在刷新时重新加载而不是从浏览器缓存中提供。

编辑:`

var onProxyRes = function(proxyRes, req, res) {
    if ( proxyRes.headers["content-type"] == "text/css" || 
    proxyRes.headers["content-type"] == "application/javascript") {
    proxyRes.headers["Cache-Control"] = "public, max-age=86400";
  }

//在此添加内容以修改代理响应 };` 尝试在代理响应上手动添加缓存标头也不会缓存资产

1 个答案:

答案 0 :(得分:2)

在Chrome论坛中发现这一点,如果您遇到任何类型的SSL错误,则在运行https服务器时,浏览器会阻止通过HTTPS进行缓存 https://bugs.chromium.org/p/chromium/issues/detail?id=110649。现在适合我