This class produces secondary keys for a response from an origin server that contains a Vary header.
The cache must store the response with the requested header from the original request, so that subsequent requests match. This is a little confusing, so an example follows:
A request comes in with:
GET /some/path HTTP/1.1 Host: example.com Accept-Encoding: gzip
The response comes back with a Vary header on the Accept-Encoding:
HTTP/1.1 200 OK Vary: Accept-Encoding Content-Encoding: gzip Content-Type: application/json Content-Length: 230 Cache-Control: max-age=10000000
The cache has to look at the Vary header, see that "Accept-Encoding" is a header on the request, and then store "Accept-Encoding: gzip" as a secondary key on the cache entry.
The implication is that the primary key entry of "GET http://example.com/some/path" is insufficient, and in order to get that specific response from cache, any subsequent requests should have a "Accept-Encoding: gzip" header in the same way.
Attributes
- See also
- Companion
- object
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any