0

我的代码:

if not 'last_user_visit' in request.COOKIES:
    response.set_cookie('last_user_visit', now)
    last_visit = request.COOKIES.get('last_user_visit')
    print last_visit

为什么last_visitNone我的情况下?

4

2 回答 2

1

因为您将它设置在响应中,并从请求中读取它。在向客户端发送响应并收到下一个请求之前,不会更新请求中的版本。

于 2013-10-24T15:23:55.697 回答
0

您必须像丹尼尔建议的那样首先发送响应,您在响应中设置 cookie,然后您必须返回它。因此,从那时起,每当有请求到来时,它都会持有该 cookie,您可以访问它。你可以像这样创建函数:

def cookie_setter(request):
    '''Do your function task and create response object
    '''
    if not 'last_user_visit' in request.COOKIES:
        response.set_cookie('last_user_visit', now)
    return response
于 2013-10-24T16:29:31.273 回答