如何在Django中使用会话?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
<强>一、会话的概念强>
饼干是在浏览器端保存键值对数据,而会话是在服务器端保存键值对数据
会话的使用依赖饼干:在使用会话后,会在cookie中存储一个sessionid的数据,每次请求时浏览器都会将这个数据发给服务器,服务器在接收到sessionid后,会根据这个值找出这个请求者的会话。
<强>二,Django中会话的使用强>
会话键值对数据保存
request.session.get(& # 39;键& # 39;,默认值) #,或者 request.session[& # 39;键& # 39;]
清除所有会话,在存储中删除值的部分
<代码> request.session.clear() 代码>
清除会话数据,在存储中删除会话的整条数据
<代码> request.session.flush() 代码>
删除会话中的指定键及值,在存储中只删除某个键及对应的值
<代码> del request.session[& # 39;键& # 39;]代码>
设置会话数据有效时间,如果不设置,默认过期时间为两周
<代码> request.session.set_expiry(值)代码>
- <李>
如果价值是一个整数,则会话数据将在价值秒没有活动后过期。
李> <李>如果为没有价值,那么会话永不过期。
李> <李>如果值为0,那么用户会话的Cookie将在用户的浏览器关闭时过期。
李><强>四,以下是使用例子:强>
#,发短信接口 def sms_send(请求): ,# http://localhost: 8000/duanxin/duanxin/sms_send ?电话=18434288349 ,# 1,获取手机号=,,phone  request.GET.get(& # 39;电话# 39;) ,# 2,生成6位验证码=,,code  aliyunsms.get_code(6,假) ,# 3,缓存到复述 ,# cache.set(电话、代码、60),# 60年代有效期 ,#打印(& # 39;判断缓存中是否有:& # 39;,cache.has_key(电话) ,#打印(& # 39;获取复述,验证码:& # 39;,cache.get(电话) ,#暂时用会话处理 ,request.session[& # 39;电话# 39;],=,代码 ,request.session.set_expiry(300), #设置5分钟后过期 ,打印(& # 39;判断缓存中是否有:& # 39;,,request.session.get(& # 39;电话# 39;)) ,打印(& # 39;获取会话验证码:& # 39;,request.session.get(& # 39;电话# 39;)) ,# 4,发短信=,,result  aliyunsms.send_sms(电话,,代码) ,return HttpResponse(结果) #,短信验证码校验 def sms_check(请求): ,#/duanxin/sms_check/?电话=xxx&代码=xxx ,# 1只电话和手动输入的验证码=,,phone  request.GET.get(& # 39;电话# 39;)=,,code  request.GET.get(& # 39;代码# 39;) ,# 2只获取复述中保存的代码 ,#打印(& # 39;缓存中是否包含:& # 39;,cache.has_key(电话) ,#打印(& # 39;取值:& # 39;,cache.get(电话) ,# cache_code =, cache.get(电话) ,#获取会话里的代码 ,打印(& # 39;取值:& # 39;,,request.session.get(& # 39;电话# 39;))=,,cache_code  request.session.get(& # 39;电话# 39;) ,# 3只判断 ,if code ==, cache_code: ,return HttpResponse (json.dumps({& # 39;结果# 39;:& # 39;好# 39;})) ,其他的: ,return HttpResponse (json.dumps({& # 39;结果# 39;:& # 39;假# 39;}))
关于如何在Django中使用会话问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。