W3C home > Mailing lists > Public > ietf-http-wg-old@w3.org > January to April 1997

Re: Suggestion: Add Cache-Control extensibility to Vary header

From: Koen Holtman <koen@win.tue.nl>
Date: Sun, 16 Mar 1997 19:21:27 +0100 (MET)
Message-Id: <199703161821.TAA11253@wsooti08.win.tue.nl>
To: Henrik Frystyk Nielsen <frystyk@w3.org>
Cc: http-wg@cuckoo.hpl.hp.com
Henrik Frystyk Nielsen:
>
>
>By adding the Cache-Control header extensibility mechanism (14.9.6) to the
>Vary header, I believe that we make caches much more robust to extended
>content (or feature) negotiation than by having the current definition of
>Vary.

[....]

>	HTTP/1.1 200 OK
>	Protocol: {http://some.org/a-required-extension {str "req"}},
>		   {http://some.org/an-optional-extension {str "opt"}}
>	Vary: Protocol, "http://some.org/a-required-extension"
>	Content-Type: text/plain

In stead of 

 Vary: Protocol, "http://some.org/a-required-extension"

you can just as well use

 Vary: Protocol
 Cache-control: vary-protocol="http://some.org/a-required-extension"

or something, so there is no need to revise the Vary syntax: just use the
extensible cache-control syntax to convey your extra directive.

You can also use the following hack, which will get you what you want even
under the current HTTP/1.1 spec.  If you have multiple protocol headers but
only want caches to vary on one, include an extra header like

Proto-Vary: {http://some.org/a-required-extension {str "req"}}

in the response, and send "Vary: proto-vary" in stead of "Vary: protocol".
Strange, but fun.  Of course, you would usually want to have a shorter
encoding in the above proto-vary header.

>Henrik

Koen.
Received on Sunday, 16 March 1997 10:22:45 EST

This archive was generated by hypermail pre-2.1.9 : Wednesday, 24 September 2003 06:32:31 EDT