如何在GAE/Python中设置一个月的cookie?

6 投票
1 回答
5337 浏览
提问于 2025-04-17 03:01

我需要实现以下功能:

  1. 用户输入用户ID和密码
  2. 我们在另一个服务器上验证这些信息
  3. 如果信息正确,就保存包含这些信息的cookies,保存一个月
  4. 每次用户访问我的网站时,我们都要检查这些cookies
  5. 如果没有找到cookies,就回到第一步

我该如何设置cookies保存一个月呢?

下面的代码能行吗?

self.response.headers.add_header(
        'Set-Cookie', 
        'credentials=%s; expires=Fri, 31-Dec-2020 23:59:59 GMT' \
          % credentials.encode())

如何计算从现在开始一个月后的时间,并以需要的格式表示呢?

1 个回答

12

你可以使用 webapp.Response.set_cookie() 方法来设置 cookie:

import datetime

self.response.set_cookie('name', 'value', expires=datetime.datetime.now(), path='/', domain='example.com')

设置 cookie 的日期格式大概是这样的:

print (datetime.datetime.now() + datetime.timedelta(weeks=4)).strftime('%a, %d %b %Y %H:%M:%S GMT') 

撰写回答