如何在Django中使用会话

  介绍

如何在Django中使用会话?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

<强>一、会话的概念

饼干是在浏览器端保存键值对数据,而会话是在服务器端保存键值对数据
会话的使用依赖饼干:在使用会话后,会在cookie中存储一个sessionid的数据,每次请求时浏览器都会将这个数据发给服务器,服务器在接收到sessionid后,会根据这个值找出这个请求者的会话。

<强>二,Django中会话的使用

会话键值对数据保存

如何在Django中使用会话”> </p> <p>会话数据默认保存在Django项目的一张数据库表中(表名为:django_session),保存格式如下:</p> <p> <img src= 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中使用会话问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

如何在Django中使用会话