Re: p2: Expect: 100-continue and "final" status codes

On Wed, Apr 24, 2013 at 01:00:42PM -0400, Ken Murchison wrote:
> >2. If the client receives a final status code instead of 100 
> >(Continue), it
> >should stop sending request body if it is doing so; it must close the
> >connection after the response is received.
> 
> I don't understand point #2.  If the client submits a request with 
> Expect:100-continue, I would assume that the client MUST NOT send any 
> part of the body until it receives 100 (Continue) from the server.  If 
> the server rejects the request based on the headers (with 412, 415, 417, 
> etc) there should be no body data in the pipe for either the client or 
> server to worry about, correct?

In fact the client can decide that it's been waiting too long for 100
and decides to send anyway (because some old servers or intermediaries
do not know about Expect and will wait).

So what is generally done is that the client sends the headers, waits a
bit then starts to send data if the server does not respond.

Implementation of expect+100 seems to be a real mess at some places,
but when it works it prove to be quite useful.

Willy

Received on Wednesday, 24 April 2013 17:07:08 UTC