我的代码:
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_visit
在None
我的情况下?
我的代码:
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_visit
在None
我的情况下?
因为您将它设置在响应中,并从请求中读取它。在向客户端发送响应并收到下一个请求之前,不会更新请求中的版本。
您必须像丹尼尔建议的那样首先发送响应,您在响应中设置 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