Re: Proposal: 205 Bodies [#88]

or is this an example of an entity not being the same as a message body?


Adrien de Croy wrote:
>
> from RFC2616
>
> 10.2.6 205 Reset Content
>
> "... The response MUST NOT include an entity. "
>
>
> 4.4 Message length
>
> "1.Any response message which "MUST NOT" include a message-body (such 
> as the 1xx, 204, and 304 responses and any response to a HEAD request) 
> is always terminated by the first empty line after the header fields, 
> regardless of the entity-header fields present in the message. "
>
> I read this as any 205 response being terminated by the blank line, 
> regardless of any Content-Length, and certainly disallowing chunking?  
> Sure, 205 isn't given as an example, however the requirement is about 
> any response message which MUST NOT include a message body, which 205 
> satisfies according to 10.2.6.
>
> Regards
>
> Adrien
>
>
>
>
> Roy T. Fielding wrote:
>> On Jun 8, 2009, at 12:16 PM, Mark Nottingham wrote:
>>
>>> <http://trac.tools.ietf.org/wg/httpbis/trac/ticket/88>
>>>> RFC2616 Section 4.3 "Message Body" enumerates those messages that 
>>>> don't include a message-body;
>>>>
>>>> All 1xx (informational), 204 (no content), and 304 (not modified) 
>>>> responses MUST NOT include a message-body. All other responses do 
>>>> include a message-body, although it MAY be of zero length.
>>>>
>>>> However, it does not list 205 (section 10.2.6).
>>>>
>>>> Also if you look at the texts for 204, 304 and 205 responses, you 
>>>> see that 204 and 304 say "MUST NOT include a message-body", whereas 
>>>> 205 says "MUST NOT include an entity". 204 and 304 go on to say 
>>>> that the message is terminated at the first empty line, but 205 
>>>> does not say that.
>>>>
>>>
>>>
>>> Proposal:
>>>
>>>  - Add 205 to p1 sections 4.3 and 4.4 (which is where 2616's 4.3 
>>> ended up), and
>>>  - Revise the language in p2 8.2.6 (the definition of 205 Reset 
>>> Content) to use the "MUST NOT include a message-body".
>>>
>>> The only argument I can see against this is that someone might 
>>> include entity headers in a 205 response, in the belief that that 
>>> response updates a cache. This could be fixed by adding the phrase 
>>> "or entity headers" to the MUST NOT requirement above. However, I 
>>> would note that 204 doesn't have any such language, and this 
>>> confusion hasn't come up before, so I don't think it's really 
>>> necessary.
>>>
>>> I think this is *almost* editorial -- any objection?
>>
>> Big objection.  205 was added late in the process of 2068 and
>> could not be grandfathered into the message parsing algorithm
>> as yet another (bad) exception.  The requirement that 205 not
>> include an entity means that the message-body MUST be of zero size
>> (i.e., Content-Length must be supplied with a value of 0
>> or Transfer-Encoding chunked is used with a zero-length chunk).
>>
>> Hence, it is correct as specified, albeit confusing.  It will
>> be less confusing when the terminology is cleaned up.
>>
>> ....Roy
>>
>

-- 
Adrien de Croy - WinGate Proxy Server - http://www.wingate.com

Received on Monday, 8 June 2009 10:43:31 UTC