_handlers = []
+ if self.cookiejar != None:
+ _handlers.append(urllib2.HTTPCookieProcessor(self.cookiejar))
+
if self.auth:
if not isinstance(self.auth.handler, (urllib2.AbstractBasicAuthHandler, urllib2.AbstractDigestAuthHandler)):
auth_manager.add_password(self.auth.realm, self.url, self.auth.username, self.auth.password)
_handlers.append(self.auth.handler)
+ if _handlers:
_handlers.extend(get_handlers())
opener = urllib2.build_opener(*_handlers)
return opener.open
if not self.sent or anyway:
try:
opener = self._get_opener()
- resp = opener(req)
+ resp = opener(req)
+
+ if self.cookiejar != None:
+ self.cookiejar.extract_cookies(resp, req)
except urllib2.HTTPError, why:
self._build_response(why)
self.response.error = why
else:
self.response.cached = True
-
self.sent = self.response.ok
return self.sent
data = kwargs.pop('data', dict()) or kwargs.pop('params', dict())
r = Request(method=method, url=url, data=data, headers=kwargs.pop('headers', {}),
- cookiejar=kwargs.pop('cookies', None), files=kwargs.pop('files', None),
+ cookiejar=kwargs.pop('cookiejar', None), files=kwargs.pop('files', None),
auth=kwargs.pop('auth', auth_manager.get_auth(url)))
r.send()
# -*- coding: utf-8 -*-
import unittest
+import cookielib
import requests
self.assertFalse(r.error)
r.raise_for_status()
+ def test_cookie_jar(self):
+ """
+ .. todo:: This really doesn't test to make sure the cookie is working
+ """
+ jar = cookielib.CookieJar()
+ self.assertFalse(jar)
+
+ requests.get('http://google.com', cookies=jar)
+ self.assertTrue(jar)