On Wed, Nov 19, 2014 at 9:17 PM, Rodney Smith <rodney...@gmail.com> wrote:
> I have a problem where a client is sending audio data via POST, and while > the request line and headers reach the server, the body of the POST does > not. However, if the client uses the header "Transfer-Encoding: chunked" > and chunks the data, it does get sent. What can I do to get the POST body > sent without the chunking? > What can be changed to get the incoming raw data packets to get forwarded? > > > The client sends this as the first packet, where path and hostaddress get > changed via regex before getting assigned a server: > POST /path/g711.cgi HTTP/1.1 > Host: hostaddress > Connection: Close > Authorization: Basic ASLKSDNW8RUNVS3=== > > And in subsequent packets, the raw audio data: blah, blah, blah. > -r > > The request does not conform to the HTTP spec and haproxy is ignoring the body as required by the spec. See sections 4.3 and 4.4 http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.3 In particular, this paragraph: 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. -Bryan