title: django处理cookie的机制
tags: djaogo, cookie, session
grammar_cjkRuby: true
cookie的意义
那么,cookie是什么呢?
我们可以通过cookie拿到用户标示,识别用户,进而达到给每个用户提供不一样的页面的可能性。
通过一个例子看下cookie的使用场景。
在之前的博客中,我们讲述了一个简单的登陆的例子。
其中就有使用cookies的功能
def index(request):
msg = ""
username = request.get_cookie("username"):
if username:
return render(request, 'index.html', {'username': username})
else:
return render(request, 'login.html')
有关cookie的一些API参数设置
我们做点简单的实验,看看这些参数的意义是怎样的
首先,我们给cookies设置过期时间
max_age 的单位是秒
我们把上面的程序段改写如下:
#coding:utf-8
from django.shortcuts import render
from django.shortcuts import redirect
from app01 import models
def login(request):
# models.Administrator.objects.create(username = "root", password =
# "123123")
msg = ''
if request.method == 'POST':
print 'start...'
print request.method
username = request.POST.get('username')
password = request.POST.get('password')
c = models.Administrator.objects.filter(username = username,
password = password).count()
if c:
rep = redirect('/index.html')
rep.set_cookie('username', username, max_age = 20)
rep.set_cookie('email', "aaabbb")
return rep
else:
msg = "用户名密码有错误"
return render(request, "login.html", {'msg': msg})
return render(request, 'login.html', {'msg': msg})
request.set_signed_cookie(k, v, salt = "XXXXX")
cookie和session有什么区别