我正在尝试学习HTTP的一些基础知识。我检查了一些HTTP响应头,注意到了两件令我困惑的事情:
没有cache-control头部和
ETag头部存在。
我理解的ETag的方式是,客户端将ETag发送到缓存中,缓存使用Etag与服务器重新验证资源。但如果响应中没有Cache-Control头,则所有后续请求直接与服务器进行重新验证并完全忽略缓存,这是真的吗?还是我遗漏了什么?当响应中没有Cache-Control头时是否会发生其他事情?如果所有请求最终都将直接发送到服务器,为什么会出现ETag?
service-worker.js
文件。 - Andrew Craswell