我正在创建带有 onload 事件的 HTML 对象,它会使用相同的 svg 图像路径创建它的另一个副本。
<object data="/image.svg" type="image/svg+xml"></object>
我已经设置了 Expires 和 Cache-Control header ,以防止双重加载。但是,chrome 会忽略它们,并且不会像其他浏览器那样使用先前请求的缓存图像。对这张图片的直接请求被缓存,所以我猜只有请求缓存有问题。
第二个请求的响应头:
Accept-Ranges:bytes
Age:59
Cache-Control:max-age=1200
Content-Length:267155
Content-Type:image/svg+xml
Date:Tue, 14 Nov 2017 08:16:05 GMT
ETag:"842401d-41393-5598c11d4b740"
Expires:Tue, 14 Nov 2017 08:36:05 GMT
Last-Modified:Tue, 19 Sep 2017 14:56:53 GMT
Server:Apache/2.2.17 (Fedora)
最佳答案
真正的问题是,如果您使用代理,Chrome 不会在开发者工具中向您显示“来自磁盘缓存”的消息。但它确实如此。我不得不使用低网速连接设置来找出真正的结果。
关于google-chrome - Chrome 不缓存 <object> 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47281717/