Javascript HTTP缓存-设置缓存控制标头后,未从浏览器缓存提供资源

Javascript HTTP缓存-设置缓存控制标头后,未从浏览器缓存提供资源,javascript,node.js,http,browser-cache,cache-control,Javascript,Node.js,Http,Browser Cache,Cache Control,初始请求 第二个请求 我正在使用节点模块(express cache ctrl)在代理上启用缓存 app.use(cache.public(3600)); 我的静态资产上有一个缓存控制头,最大使用年限。我无法理解为什么它们在刷新时重新加载,而不是从浏览器缓存中提供服务 编辑:` var onProxyRes = function(proxyRes, req, res) { if ( proxyRes.headers["content-type"] == "text/css" ||

初始请求 第二个请求 我正在使用节点模块(express cache ctrl)在代理上启用缓存

app.use(cache.public(3600));
我的静态资产上有一个缓存控制头,最大使用年限。我无法理解为什么它们在刷新时重新加载,而不是从浏览器缓存中提供服务

编辑:`

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";
  }
//在此处添加一些内容以修改代理响应 };`
尝试在代理响应上手动添加缓存头也不会缓存资产

在Chrome论坛中发现此问题,同时运行https服务器如果出现任何类型的SSL错误,则浏览器会阻止通过https进行缓存
. 现在为我工作

在Chrome论坛中发现了这一点,同时运行https服务器如果您有任何类型的SSL错误,那么在这种情况下,浏览器会阻止通过https进行缓存
. 现在适合我了

你似乎正在使用Chrome DevTool的网络面板。默认情况下,选中“禁用缓存”之前的复选框。你取消选择了吗?@shaochuancs禁用缓存没有被选中编辑很奇怪。如果DevTool未禁用缓存,则根据您的屏幕截图,没有任何错误。@shaochuancs顺便说一句,我正在代理级别设置标题。我认为这不应该是一个问题,但我现在不确定您是否可以在原始服务器上设置
缓存控制
头并重试?似乎您正在使用Chrome DevTool的网络面板。默认情况下,选中“禁用缓存”之前的复选框。你取消选择了吗?@shaochuancs禁用缓存没有被选中编辑很奇怪。如果DevTool未禁用缓存,则根据您的屏幕截图,没有任何错误。@shaochuancs顺便说一句,我正在代理级别设置标题。我认为这不应该是一个问题,但我现在不确定您是否可以在原始服务器上设置
缓存控制
头并重试?