- From: Adrien W. de Croy <adrien@qbik.com>
- Date: Thu, 20 Sep 2012 03:24:56 +0000
- To: "Phillip Hallam-Baker" <hallam@gmail.com>, "Zhong Yu" <zhong.j.yu@gmail.com>
- Cc: "Tim Bray" <tbray@textuality.com>, "HTTP Working Group" <ietf-http-wg@w3.org>
- Message-Id: <em7dd635b8-b96b-4ef1-816f-b8f58a757828@bombed>
from a cache POV, it could potentially be yet another validator for correctness of the currently cached object. But there's already Modified-Date, and ETag for that. So it adds little there. As for framing, yep it's a shame C-L isn't purely a framing field. Interesting to read parts of the spec I didn't recall, such as requirements to ignore C-L if Transfer-Encoding is not identity. Makes following message boundaries a bit of a nightmare, surely we can do a lot better in HTTP/2.0 Adrien ------ Original Message ------ From: "Phillip Hallam-Baker" <hallam@gmail.com> To: "Zhong Yu" <zhong.j.yu@gmail.com> Cc: "Tim Bray" <tbray@textuality.com>;"HTTP Working Group" <ietf-http-wg@w3.org> Sent: 20/09/2012 3:13:44 p.m. Subject: Re: Content-Length and 304 >Possibly, but I can't see much value to returning Content-Length in >the first place and only returning it sometimes seems like its >completely pointless. > > >On Wed, Sep 19, 2012 at 11:01 PM, Zhong Yu <zhong.j.yu@gmail.com> wrote: > On Wed, Sep 19, 2012 at 9:35 PM, Phillip Hallam-Baker <hallam@gmail.com> wrote: > > I see no benefit either. I am certain that there is no benefit if > > implementation is less than 100% and I am pretty sure there isn't a > point if > > there is 100% implementation. > > > > It also boxes the use of the conditional get in. Say the > conditional get is > > for a generated page with lots of content that is user specific and > an > > article that is updated from time to time. The server would have to > do a lot > > of work to calculate the content length for the generated page but > it can > > check to see if it needs to refresh by checking the sources. > > I guess the author intended the header to be optional - only set it if > convenient. > > Nevertheless, previously Content-Length was meaningless in 204/304 > responses; now it is assigned a meaning in 304. That can be > surprising. > > Zhong Yu > > > > > If we are going to make any change here I would suggest the opposite > > approach and deprecate sending a Content-Length other than 0. > > > > I would like to see those two purposes separate in HTTP/2.0 in any > case. > > > > > > > > On Wed, Sep 19, 2012 at 10:22 PM, Tim Bray <tbray@textuality.com> wrote: > >> > >> I had missed this. I just revisited 2616 and unless I misread, > this is > >> a new thing. This appears to me to add substantial workload to the > >> server and I don’t comprehend the benefit. Either I missed > something, > >> or YAGNI. -T > >> > >> On Wed, Sep 19, 2012 at 6:22 PM, Zhong Yu <zhong.j.yu@gmail.com> wrote: > >> > In the latest bis draft, a 304 response SHOULD set Content-Length > >> > equal to the length of the would-be payload body. > >> > > >> > ==== > >> > > >> > http://tools.ietf.org/html/draft-ietf-httpbis-p1-messaging-20#section-3.3.2 > >> > 3.3.2. Content-Length > >> > > >> > ... a Content-Length header field SHOULD be sent to indicate the > >> > length of the payload body that ... would have been present had > the > >> > request been an unconditional GET. > >> > > >> > ...In the case of a 304 response to a GET request, Content-Length > >> > indicates the size of the payload body that would have been sent > in a > >> > 200 response. > >> > ==== > >> > > >> > > >> > However, RFC2616 was not specific on the matter. If a server > >> > implementation always sets "Content-Length: 0" for 304 > responses, it > >> > was acceptable. But now it becomes non-compliant under the new > spec. > >> > > >> > Is this new requirement really necessary? Who would benefit from > it? > >> > > >> > According to the reasoning of > >> > > >> > ==== > >> > > >> > http://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-20#section-4.1 > >> > 4.1. 304 Not Modified > >> > Since the goal of a 304 response is to minimize information > transfer > >> > when the recipient already has one or more cached > representations, the > >> > response SHOULD NOT include representation metadata other than > the > >> > above listed fields > >> > ==== > >> > > >> > we SHOULD NOT include Content-Length in 304 responses either. > >> > > >> > I think the meaning of Content-Length is confusing enough, in > the case > >> > of 204/304 response, it's better to require that > >> > 1. server SHOULD NOT set Content-Length > >> > 2. client MUST ignore Content-Length > >> > > >> > Zhong Yu > >> > > >> > > > > > > > > -- > > Website: http://hallambaker.com/ > > -- Website: http://hallambaker.com/
Received on Thursday, 20 September 2012 03:25:22 UTC