- From: Shel Kaphan <sjk@amazon.com>
- Date: Thu, 7 Sep 1995 10:39:05 -0700
- To: John Franks <john@math.nwu.edu>
- Cc: Paul Leach <paulle@microsoft.com>, http-wg%cuckoo.hpl.hp.com@hplb.hpl.hp.com
> > Roy says: > > ] > > ] Just as an informational point, I already included these semantics > > ] in draft 01 for the "max-age" (now Cache-Control: max-age=NNN) parameter. > > Am I the only one around here who finds it extremely unaesthetic to have such an unorthogonal design for such an important part of this protocol? Orthogonality is not just for looks, it also means you don't have to define how the unorthogonal elements behave when they combine (as Paul has also pointed out). It's just bad design to allow overlapping functionality like this. The duplication of function is FAR more confusing than the fact that Expires has semantics that are not obvious without "reading the directions." The only functional difference I can detect between Cache-control: max-age and Expires: <now-or-in-the-past> is that Cache-control: max-age is defined to operate on "intermediaries", which I assume is intended to mean proxy caches. I would much rather see an extra parameter on one or the other of Expires or Cache-control to cover this difference, say "Cache-control: max-age=nnn, proxies-only", or some such thing, and get rid of the duplication. For that matter, I would be in favor of getting rid of all the duplication caused by the interaction of Expires and Cache-control. Expires could (and I think should) be completely eliminated, except for downward compatibility, and it should be illegal to have both Expires and Cache-control:max-age in the same response. --Shel
Received on Thursday, 7 September 1995 10:44:37 UTC