Message96007
Hi there !
According the documentation [1], the following code should work :
>>> from http.cookies import SimpleCookie
>>> c = SimpleCookie({'field1': 'value1', 'field2': 'value2'})
>>> print(c)
'Set-Cookie: field1=value1\r\nSet-Cookie: field2=value2'
But an exception is raised :
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\python31\lib\http\cookies.py", line 507, in output
result.append( V.output(attrs, header) )
AttributeError: 'str' object has no attribute 'output'
in BaseCookie.load(...) the call to BaseCookie.update(rawdata) seem to
use dict.__setitem__ instead of BaseCookie.__setitem__.
Despite it's weird (I believe that the __setitem__ of the child class
should be used) I don't know why.
I don't have a solution to this underlying issue so I propose to define
an update method for BaseCookie:
def update(self, other=None, **kwargs):
if other is None:
other = kwargs
elif not hasattr(other, 'items'):
other = dict(other)
for k, v in other.items():
self[k] = v
This method behave like the dict one.
Hope it help and it's not a duplicate.
Regards,
Thomas
[1] :
http://docs.python.org/3.1/library/http.cookies.html#http.cookies.BaseCookie.load |
|
Date |
User |
Action |
Args |
2009-12-05 20:36:54 | tcourbon | set | recipients:
+ tcourbon |
2009-12-05 20:36:54 | tcourbon | set | messageid: <1260045414.09.0.536880658138.issue7446@psf.upfronthosting.co.za> |
2009-12-05 20:36:52 | tcourbon | link | issue7446 messages |
2009-12-05 20:36:51 | tcourbon | create | |
|