Issue #1217 new

request body is not consumed

Jim Paris
created an issue

If Content-Type is not 'application/x-www-form-urlencoded', 'multipart/form-data', or 'multipart', and the Transfer-Encoding is chunked, the request body is never consumed, messing up the next request.

Instead I need to consume it manually in every handler with e.g.

try:
    body = cherrypy.request.body.read() # this fails for GET requests due to issue #1134
except TypeError:
    pass

For non-chunked requests, it's handled by wsgiserver2.py:

if (not self.close_connection) and (not self.chunked_read):
            # Read any remaining request body data on the socket.    

But this still doesn't cover the case where it's chunked encoding. Once the server has already sent the Continue, you've told the client that it's OK to send the data and you need to actually consume it.

Comments (1)

  1. Log in to comment