我们注意到Chrome会在本地缓存文件,甚至不会向我们的服务器发送请求以检查javascript文件是否有更新版本。
以下是Google缓存的js文件的HTTP响应头示例:
Chrome缓存这个文件是有效的吗?没有“Cache-control”头或其他声明文件可以本地缓存,它只有ETag和Last-Modified。
顺便问一下 有没有一种方法(可能是一个头)可以指示Chrome检查缓存的文件是否已更改,而不必将版本附加到文件名中?设置no-cache不是一个选项,因为我确实希望它被缓存,但我想使用ETag和Last-Modified头。
以下是Google缓存的js文件的HTTP响应头示例:
Accept-Ranges:bytes
Access-Control-Allow-Headers:Content-Type
Access-Control-Allow-Methods:GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Origin:*
Content-Encoding:gzip
Content-Length:5479
Content-Type:application/javascript
Date:Tue, 12 Jan 2016 22:46:07 GMT
ETag:"7d68e1ceb647d11:0"
Last-Modified:Tue, 05 Jan 2016 12:44:25 GMT
Server:Microsoft-IIS/8.5
Vary:Accept-Encoding
x-robots-tag:noindex
Chrome缓存这个文件是有效的吗?没有“Cache-control”头或其他声明文件可以本地缓存,它只有ETag和Last-Modified。
顺便问一下 有没有一种方法(可能是一个头)可以指示Chrome检查缓存的文件是否已更改,而不必将版本附加到文件名中?设置no-cache不是一个选项,因为我确实希望它被缓存,但我想使用ETag和Last-Modified头。