1.cookie
# 设置cookie,从服务器返回的response中设置
response = redirect(path) # 重定向到某个指定的路径下
response.set_cookie(key,value,max_age=0) # 直接设置cookie的值和value,max_age是过期时间,0是默认,None是永久,接上数字是具体时间,用s做单位。
如:response.set_cookie('name',person.name,max_age=3600)
# 获取cookie,从客户端请求中获得
name = request.COOKIE.get('name')
response = render(request,'home.index',contex=({'name':name})
return response
# 清除cookie,从response清除
response = redirect('namespace:name')
response.delete_cookie('name')
2.session
# 设置session,一开始需要在project中setting里的middleware中添加上'django.contrib.sessions.middleware.SessionMiddleware',
#默认是加上的,在request中设置session
request.session['name'] = person.name
request.session.set_expiry(60) # 设置过期时间,单位是s
# 获取session,也是从request中获取
name = request.session.get('name')
# 删除session,在response中删除
response.delete_cookie('sessionid') # 在客户端删除session
del request.session['name'] # 在服务器端删除session
request.session.flush() # 直接清除两端的session
3.token
# 设置token,首先需要建立有关token字段的表格,在response中设置
person.token = create_token() # create_token 是创造token的函数
response.set_cookie('token',person.token)
# 获取token,在request中获取token
person.token = request.COOKIE.get('token')
# 清除token,在response中清除
response.delete_cookie('token')
4.进行md5加密
import hashlib
def create_hash(password)
md5 = hashlib.md5()
md5.update(password.encode('utf-8'))
return md5.hexdigest()
5.uuid创建token
import uuid
token = str(uuid.uuid5(uuid.uuid4() ,'token'))
网友评论