From a9e18e9106fc78ca8ab668ab1d164c27309f1466 Mon Sep 17 00:00:00 2001 From: digitalxero Date: Sat, 19 Feb 2011 11:18:29 -0500 Subject: [PATCH] Update the README --- README.rst | 77 ++++++++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 52 insertions(+), 25 deletions(-) diff --git a/README.rst b/README.rst index 9fc05af..3750953 100644 --- a/README.rst +++ b/README.rst @@ -1,11 +1,11 @@ Requests: The Simple (e.g. usable) HTTP Module ============================================== -Most existing Python modules for dealing HTTP requests are insane. I have to look up *everything* that I want to do. Most of my worst Python experiences are a result of the various built-in HTTP libraries (yes, even worse than Logging). +Most existing Python modules for dealing HTTP requests are insane. I have to look up *everything* that I want to do. Most of my worst Python experiences are a result of the various built-in HTTP libraries (yes, even worse than Logging). But this one's different. This one's going to be awesome. And simple. -Really simple. +Really simple. Features -------- @@ -15,7 +15,7 @@ Features + Simple Data/Params Request Attachment + Simple Multipart File Uploads + CookieJar Support - + - Simple Basic HTTP Authentication + Simple URL + HTTP Auth Registry @@ -30,23 +30,23 @@ It couldn't be simpler. :: HTTPS? Basic Authentication? :: - + >>> r = requests.get('https://convore.com/api/account/verify.json') >>> r.status_code 401 - + Uh oh, we're not authorized! Let's add authentication. :: - - >>> conv_auth = requests.AuthObject('requeststest', 'requeststest') + + >>> conv_auth = ('requeststest', 'requeststest') >>> r = requests.get('https://convore.com/api/account/verify.json', auth=conv_auth) - + >>> r.status_code - 200 - + 200 + >>> r.headers['content-type'] 'application/json' - + >>> r.content '{"username": "requeststest", "url": "/users/requeststest/", "id": "9408", "img": "censored-long-url"}' @@ -54,37 +54,64 @@ Uh oh, we're not authorized! Let's add authentication. :: API --- - + **Requests:** All request functions return a Response object (see below). If a {filename: fileobject} dictionary is passed in (files=...), a multipart_encode upload will be performed. If CookieJar object is is passed in (cookies=...), the cookies will be sent with the request. - + GET Requests >>> request.get(url, params={}, headers={}, cookies=None, auth=None) - + HEAD Requests >>> request.head(url, params={}, headers={}, cookies=None, auth=None) - + PUT Requests >>> request.put(url, data='', headers={}, files={}, cookies=None, auth=None) - + POST Requests >>> request.post(url, data={}, headers={}, files={}, cookies=None, auth=None) - + DELETE Requests >>> request.delete(url, params={}, headers={}, cookies=None, auth=None) - + +**AsyncRequests:** + +All request functions return a Response object (see below). + +If a {filename: fileobject} dictionary is passed in (files=...), a multipart_encode upload will be performed. +If CookieJar object is is passed in (cookies=...), the cookies will be sent with the request. + + GET Requests + >>> request.async.get(url, params={}, headers={}, cookies=None, auth=None) + + + HEAD Requests + >>> request.async.head(url, params={}, headers={}, cookies=None, auth=None) + + + PUT Requests + >>> request.async.put(url, data='', headers={}, files={}, cookies=None, auth=None) + + + POST Requests + >>> request.async.post(url, data={}, headers={}, files={}, cookies=None, auth=None) + + + DELETE Requests + >>> request.async.delete(url, params={}, headers={}, cookies=None, auth=None) + + **Responses:** - + Response.status_code: (Integer) Received HTTP Status Code Response @@ -95,14 +122,14 @@ If CookieJar object is is passed in (cookies=...), the cookies will be sent with (Bytes) Received Content Response.url - (String) URL of response. Useful for detecting redirects. - + (String) URL of response. Useful for detecting redirects. + Response.ok (Bool) True if no errors occurred during the request, and the status_code is kosher. - + Response.error (HTTPError) If an HTTPError occurred (e.g. status of 404), Otherwise this is None. - + Response.raise_for_status() Raises HTTPError if a request is not kosher. @@ -121,13 +148,13 @@ Installation To install requests, simply: :: $ pip install requests - + Or, if you absolutely must: :: $ easy_install requests But, you really shouldn't do that. - + Contribute -- 2.7.4