- From: Jamie Lokier <jamie@shareable.org>
- Date: Fri, 22 Apr 2005 16:03:09 +0100
- To: Marc Schneider <mschneider@opnet.com>
- Cc: ietf-http-wg@w3.org
Marc Schneider wrote: > What is the proper behavior if a client sends a request to a server > using the Expect request-header field with the 100-continue > expectation, and then pipelines another request before a 100 Contine > response is received and before the entity body of the first request > has been sent? > Is this legal? Are there any known clients that exhibit this behavior? It's not legal. If the client doesn't see a 100 Continue response, it can choose not to send the request body and close the connection. It can't omit the body and send another request, not even if it's already seen a response from the server. Think about it: after the server sends an error response (without 100 Continue), the server cannot possibly know whether the client has sent a request body or not. It might be in flight in the network, because the client is allowed to time out waiting for 100 Continue then send a request body. And because a request body is not syntactically distinguishable from another request, the server must continue to listen for a request body or close the connection. Which means the client must send it or close the connection. -- Jamie
Received on Friday, 22 April 2005 15:03:16 UTC