Subject: i19 - bodies on GET -- round 2

From: Mark Nottingham <[email-masked]>
Date: Tue, 15 May 2007 16:59:19 +1000

Section 4.3;

> The presence of a message-body in a request is signaled by the  
> inclusion of a Content-Length or Transfer-Encoding header field in  
> the request's message-headers. A message-body MUST NOT be included  
> in a request if the specification of the request method (section  
> 5.1.1) does not allow sending an entity-body in requests. A server  
> SHOULD read and forward a message-body on any request; if the  
> request method does not include defined semantics for an entity- 
> body, then the message-body SHOULD be ignored when handling the  
> request.

I propose both:

* Changing "does not allow" to "explicitly disallows", as per [1]
* Replacing the last sentence with: [[[  When a request message  
contains both a message-body of non-zero length and a method that  
does not define any semantics for that request message-body, then an  
origin server SHOULD either ignore the message-body or respond with  
an appropriate error message (e.g., 413).  A proxy or gateway, when  
presented the same request, SHOULD either forward the request inbound  
with the message-body or ignore the message-body when determining a  
response. ]]], as per [2]

1. http://www.w3.org/mid/[email-masked]
2. http://www.w3.org/mid/[email-masked]

--
Mark Nottingham     http://www.mnot.net/

---

From: Julian Reschke <[email-masked]>
Date: Tue, 15 May 2007 11:24:22 +0200

Mark Nottingham wrote:
> ...
> * Replacing the last sentence with: [[[  When a request message contains 
> both a message-body of non-zero length and a method that does not define 
> any semantics for that request message-body, then an origin server 
> SHOULD either ignore the message-body or respond with an appropriate 
> error message (e.g., 413).  A proxy or gateway, when presented the same 
> request, SHOULD either forward the request inbound with the message-body 
> or ignore the message-body when determining a response. ]]], as per [2]
> 
> 
 > ...

I think "SHOULD ... ignore" could be misread as "treat as if not there". 
But what we want is that the body *is* consumed, but then the contents 
is ignored, right?

Best regards, Julian

---

From: Mark Nottingham <[email-masked]>
Date: Wed, 16 May 2007 12:50:18 +1000

Are you saying that "ignore" might encompass things like parsing for  
message delimitation, etc., thereby spoiling the connection,  
effectively?

Do you have a suggestion? Is it as easy as changing it to "ignore the  
contents of the message-body..." in both instances?

Cheers,

On 15/05/2007, at 7:24 PM, Julian Reschke wrote:

>> does not define any semantics for that request message-body, then  
>> an origin server SHOULD either ignore the message-body or respond  
>> with an appropriate error message (e.g., 413).  A proxy or  
>> gateway, when presented the same request, SHOULD either forward  
>> the request inbound with the message-body or ignore the message- 
>> body when determining a response. ]]], as per [2]
> I think "SHOULD ... ignore" could be misread as "treat as if not  
> there". But what we want is that the body *is* consumed, but then  
> the contents is ignored, right?
>
> Best regards, Julian
>

---

From: Julian Reschke <[email-masked]>
Date: Wed, 16 May 2007 10:41:25 +0200

Mark Nottingham wrote:
> message delimitation, etc., thereby spoiling the connection, effectively?

I think "ignore" could be read as "treat the message as if there was no 
request body", but we want is "read the message body, but ignore it", right?

> contents of the message-body..." in both instances?

That sounds good.

Best regards, Julian