diff --git a/requests/sessions.py b/requests/sessions.py index 9a68e618..77a26e5b 100644 --- a/requests/sessions.py +++ b/requests/sessions.py @@ -87,6 +87,9 @@ class Session(object): # Set up a CookieJar to be used by default self.cookies = {} + if cookies is not None: + self.cookies.update(cookies) + def __repr__(self): return '' % (id(self)) @@ -165,6 +168,7 @@ class Session(object): # Arguments manipulation hook. args = dispatch_hook('args', args['hooks'], args) + # Create the (empty) response. r = Request(**args) # Don't send if asked nicely. @@ -174,6 +178,10 @@ class Session(object): # Send the HTTP Request. r.send() + # Send any cookies back up the to the session. + self.cookies.update(r.response.cookies) + + # Return the response. return r.response