As you are probably aware, more often than not, an HTTP server will send more than just a session_id cookie; however, httplib2 handles cookies with a dictionary, like this:
response, content = http.request(url, 'GET', headers=headers)headers = {'Cookie': response['set-cookie']}url = 'http://www.example.com/home'
response, content = http.request(url, 'GET', headers=headers)
So, how do I set the extra cookies? If handled with a dictionary, I can't have double Cookie keys :S.
Thanks for your time.
Cookies are contained in a single HTTP header, separated by semicolons. Example:
cookie1=value1;cookie2=value2
So you'll need to build a string from the cookies sent by the server, and then set that as the Cookie
header.
Edit: Actually, playing around a bit with httplib2 and re-reading your question, I'm not sure you actually need to do anything to get the functionality you want. The set-cookie
value you get back from httplib2 is actually the raw Set-Cookie
header sent from the server; you can just put that into the cookie
header of the new response, and everything will work fine. Technically speaking you should remove some cookie attributes such as expiry
, but I imagine most servers will handle that just fine.