哪个 headers 允许浏览器在根本不联系服务器的情况下重用缓存中的文件?

Which headers allow a browser to reuse a file from cache without contacting the server at all?

相反,哪个 headers 会导致浏览器下次联系服务器以检查缓存文件是否仍然有效?

Cache-Control:max-age=14400
Content-Length:1375502
Content-Type:application/json
Date:Wed, 04 Feb 2015 20:51:47 GMT
ETag:"b88aa553-6456-4844-b5bc-173ad8b9e0a1"

以上headers来自原始请求。当我 re-request 它时,我得到一个 304。

参见RFC 7234: Hypertext Transfer Protocol (HTTP/1.1): Caching, section 4.2. Freshness

A fresh response is one whose age has not yet exceeded its freshness lifetime. Conversely, a stale response is one where it has.

A response's freshness lifetime is the length of time between its generation by the origin server and its expiration time. An explicit expiration time is the time at which the origin server intends that a stored response can no longer be used by a cache without further validation, whereas a heuristic expiration time is assigned by a cache when no explicit expiration time is available.

A response's age is the time that has passed since it was generated by, or successfully validated with, the origin server.

When a response is "fresh" in the cache, it can be used to satisfy subsequent requests without contacting the origin server, thereby improving efficiency.

The primary mechanism for determining freshness is for an origin server to provide an explicit expiration time in the future, using either the Expires header field (Section 5.3) or the max-age response directive (Section 5.2.2.8).

强调我的。