我的代码:
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
?
答案 0 :(得分:1)
因为您在响应中设置了它,并从请求中读回来。在将响应发送到客户端并且已收到下一个请求之前,请求中的版本不会更新。
答案 1 :(得分:0)
你必须先发送响应,就像Daniel建议的那样,你在响应时设置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