Graham Dumpleton
graham.dumpleton at gmail.com
Mon Jan 21 22:34:51 EST 2008
What Cookie header gets sent by the browser on the request after you have tried to expire it. Ie., dump out values of req.headers_in form request handler to see what is passed in. Graham On 22/01/2008, Matt Barnicle <mattb at wageslavery.org> wrote: > ok i installed the extension and captured some data.. here is what the > header looks like when i click the signout button: > > Set-Cookie: user_name=matt; expires=Mon, 22-Jan-2007 01:54:01 GMT > > then when i go back to the home page, my code reads the cookies to see if > the cookie called 'user_name' exists, and if so, logs me in and resets the > cookies: > > if cookies.has_key('user_name'): > cookie = Cookie.Cookie('user_name', user_name) > cookie.expires = time.time() + 31536000 > Cookie.add_cookie(self.req, cookie) > > i thought maybe i need to check the expiry date of the cookie, so i tried > that with the following code: > > self.req.write(str(cookies['user_name']) + '<br>\n') > self.req.write('expires: ' + cookies['user_name'].expires + '<br>\n') > > but that throws the following error: > > File "/usr/lib/python2.5/site-packages/mod_python/Cookie.py", line 93, > in get_expires > return self._expires > > AttributeError: _expires > > - m@ > > > Have you checked what the actual cookie header returned to the browser > > is and verified that what is in it is what you expect? Post the value > > of the header here so we can see it. > > > > Use FireFox live headers extension to see value of header, or in your > > mod_python code output to error log file the output of req.headers_out > > or req.err_headers_out to see what it is. > > > > Graham > > > > On 22/01/2008, Matt Barnicle <mattb at wageslavery.org> wrote: > >> > 21 January 2008 Monday 10:49:57 tarihinde Matt Barnicle þunlarý > >> yazmýþtý: > >> >> understand it, if i want to effectively remove a cookie from the UA, > >> there > >> >> is no way to do it, so u just have to set the expiry date to a time > >> in the > >> >> past, right? but any efforts i make seem to fail. here is the code: > >> >> > >> >> cookie = Cookie.Cookie('user_name', cookies['user_name'].value) > >> cookie.expires = int(time.time()) - 31536000 # minus 1 year from now > >> Cookie.add_cookie(self.req, cookie) > >> > > >> > Might be a problem of using int(), examples in the mod_python > >> > documentation don't use int(): > >> > > >> > http://www.modpython.org/live/current/doc-html/pyapi-cookie-example.html > >> > >> i first tried it exactly like in the docs, then i tried int bc i know > >> the > >> official way to do it is to use int seconds since GMT... i also tried > >> splitting time.time() on the period, and taking the int value of the > >> first > >> bit. anyways it works ok when i log in then i check my cookies using > >> firefox web developer toolbar, it just doesn't seem to want to expire > >> the > >> cookie when i use this method.. > >> > >> - m@ > >> > >> > >> > >> _______________________________________________ > >> Mod_python mailing list > >> Mod_python at modpython.org > >> http://mailman.modpython.org/mailman/listinfo/mod_python > >> > > > > >
|