我熟悉在Python中分配,创建cookie。但我不确定如何创建一个可以持续到当前浏览器会话关闭的cookie(所以我有一个非常基本的方式来告诉用户返回到我的网站)。
我设置哪个cookie标头以确保在Python中关闭浏览器时cookie将过期/删除?我是否使用SimpleCookie对象或其他对象?
这个帖子说我在PHP中设置了cookie_lifetime标志/标题,但对于python呢? http://bytes.com/topic/php/answers/595383-how-declare-cookie-will-destroy-after-browser-closed
这会创建一个在关闭浏览器时到期的cookie吗?
cookie = Cookie.SimpleCookie()
cookie["test"] = "MYTEST"
cookie["test"]['expires'] = 0 # or shd I set the max-age header instead?
print str(cookie) + "; httponly"
答案 0 :(得分:5)
完全忽略“过期”值,即不要将其设置为任何值。有关详细信息,请参阅Wikipedia entry:
Set-Cookie:made_write_conn = 1295214458;路径= /;域= .foo.com中
[...]
第二个cookie made_write_conn没有到期日期,使其成为会话cookie。用户关闭浏览器后将删除它
在Python中:
In [11]: from Cookie import SimpleCookie
In [12]: c = SimpleCookie()
In [13]: c['test'] = 'MYTEST'
In [14]: print c
Set-Cookie: test=MYTEST
答案 1 :(得分:1)
麦克,
您的回答对我来说是正确的。在Morsel对象上设置“expires”= 0应该可以做你想要的。你测试过了吗?
看起来IE不支持max-age: