title: Safely read post body in http request handler?
body: <p>How do you safely read the post body of an HTTP POST request in a HTTP Request Handler in Python 3.+</p>
  
  <p>I keep seeing solutions like the one <a href="https://stackoverflow.com/questions/17888504/python-basehttprequesthandler-read-raw-post">here</a>.</p>
  
  <p>That solution only works if the request includes the <code>content-length</code> header and that header is accurate.  Many times <code>content-length</code> gets excluded and is unreliable, any solution based on that is just frail.  How do you return data from the <code>rfile</code> buffer without causing it hang by trying to read non existent bytes?</p>