Cookie

1、获取Cookie

客户端浏览器上的一个文件

request.COOKIES['key']
request.get_signed_cookie(key, default=RAISE_ERROR, salt='', max_age=None)
    参数:
        default: 默认值
           salt: 加密盐
        max_age: 后台控制过期时间

2、设置Cookie

rep = HttpResponse(...) 或 rep = render(request, ...)
 
rep.set_cookie(key,value,...)
rep.set_signed_cookie(key,value,salt='加密盐',...)
    参数:
        key,              键
        value='',         值
        max_age=None,     超时时间
        expires=None,     超时时间(IE requires expires, so set it if hasn't been already.)
        path='/',         Cookie生效的路径,/ 表示根路径,特殊的:跟路径的cookie可以被任何url的页面访问
        domain=None,      Cookie生效的域名
        secure=False,     https传输
        httponly=False    只能http协议传输,无法被JavaScript获取(不是绝对,底层抓包可以获取到也可以被覆盖)

由于cookie保存在客户端的电脑上,所以,JavaScript和jquery也可以操作cookie。
下载:http://plugins.jquery.com/cookie/

<script src='/static/js/jquery.cookie.js'></script>
$.cookie("list_pager_num", 30,{ 
			path: '/' ,
			expires:7,
			domain:None,
});

3、示例

# request.COOKIES
# request.COOKIES['username111']
request.COOKIES.get('username111')

response = render(request,'index.html')
#response = redirect('/index/')

# 设置cookie,关闭浏览器失效
response.set_cookie('key',"value")

# 设置cookie, N秒只有失效
response.set_cookie('username111',"value",max_age=10)

# 设置cookie, 截止时间失效
import datetime
current_date = datetime.datetime.utcnow() 
current_date = current_date + datetime.timedelta(seconds=5)
response.set_cookie('username111',"value",expires=current_date)
response.set_cookie('username111',"value",max_age=10)

# request.COOKIES.get('...')
# response.set_cookie(...)
obj = HttpResponse('s')

obj.set_signed_cookie('username',"kangbazi",salt="asdfasdf")
request.get_signed_cookie('username',salt="asdfasdf")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值