Add the ability to turn off HTTP 0.9 support.
authorJohn Szakmeister <john@szakmeister.net>
Sun, 2 Dec 2012 16:25:18 +0000 (11:25 -0500)
committerJohn Szakmeister <john@szakmeister.net>
Sun, 2 Dec 2012 16:25:18 +0000 (11:25 -0500)
commited642cfb6d471f2462953ac5f4f33a443750bd02
treea909f433d8dcd15f6283b3ed0559c191efdfa8f1
parent63243b1e3b435c7736acf1e51c0f6fa6666d861d
Add the ability to turn off HTTP 0.9 support.

While debugging an issue I discovered requests was coming back with 200
response, when it really shouldn't have.  It turns out this happened for
two reasons: the jetty server running the app was rather lame and
didn't fail the request as a Bad Request, and httplib was happy to let
malformed data through and call it success.

It turns out httplib's strict flag controls this behavior of whether or
not to validate the status line.  The underlying urllib3 supports the
concept as well.  There was a bug there to that is now fixed upstream.

The last step is exposing this through requests.  This introduces a
supports_http0.9 flag to help control this behavior.  It defaults to
to True to preserve the current behavior.   Setting it to False will
allow the underlying HTTPConnection to validate the status line.
requests/api.py
requests/defaults.py
requests/sessions.py