Python:持久cookie,生成`expires`字段

Mik*_*ike 8 python cookies

我正在尝试在简单的Python Web应用程序中为持久性cookie生成文本.

我找不到生成该expires字段的方法.该字段的文本格式有点复杂,我宁愿不编写代码来自己生成它.

Python中有什么东西有帮助吗?我已经熟悉了文档cookie,cookielib并且它们似乎处理了很多cookie业务,除了生成expires字段

zee*_*kay 12

我想你想做这样的事情:

import Cookie, datetime, uuid
ck = Cookie.SimpleCookie()

ck['session'] = str(uuid.uuid4())
ck['session']['domain'] = 'foo.com'
ck['session']['path'] = '/'
expires = datetime.datetime.utcnow() + datetime.timedelta(days=30) # expires in 30 days
ck['session']['expires'] = expires.strftime("%a, %d %b %Y %H:%M:%S GMT")

>>> print ck.output()
Set-Cookie: session=9249169b-4c65-4daf-8e64-e46333aa5577; Domain=foo.com; expires=Mon, 01 Aug 2011 07:51:53 GMT; Path=/
Run Code Online (Sandbox Code Playgroud)


nba*_*ari 7

如果我是对的,那么在使用时,您只需为过期Cookie.SimpleCookie字段指定 TTL(以秒为单位),如下所示:

from Cookie import SimpleCookie

c = SimpleCookie()
c['sid'] = 'xxx'
c['sid']['path'] = '/'
c['sid']['expires'] = 12 * 30 * 24 * 60 * 60 #  1 year
Run Code Online (Sandbox Code Playgroud)

的输出c.output()将返回类似以下内容:

'Set-Cookie: sid=xxx; expires=Mon, 20 Jul 2015 14:42:35 GMT; Path=/'
Run Code Online (Sandbox Code Playgroud)