django request.session模块创建、修改、设置sesion有效期

django版本:2.2

request.session的常用方法

  • get(key,default=None)

    • Example: fav_color = request.session.get('fav_color','red')

  • pop(key,default=__not_given)

    • Example: fav_color = request.session.pop('fav_color','blue')

  • keys

  • flush

    • 从会话中删除当前session数据并删除session cookie。 如果您要确保不再能从用户的浏览器中访问以前的session数据(可以使用django.contrib.auth.logout()函数调用它),则使用此方法。

  • create

  • save

  • exists

  • delete

  • set_expiry

    • 设置会话的到期时间。 您可以传递许多不同的值:

    • 如果value是整数,那么session将在指定秒后过期。 例如,调用request.session.set_expiry(300)将使session在5分钟后过期。

    • 如果value是datetime或timedelta对象,则会话将在该特定日期/时间过期。 请注意,只有在使用PickleSerializer时,datetime和timedelta值才能序列化。

    • 如果值为0,则当用户的Web浏览器关闭时,该用户的session Cookie将会过期。

    • 如果值是None,则会话将恢复为使用全局session到期策略。

    • session到期时间是从上次修改session开始计算的。

  • get_expiry_age()

    • 返回此session到期之前的秒数。 对于没有自定义到期时间的session(或设置为在浏览器关闭时到期的session),这将等于SESSION_COOKIE_AGE。

    • 此函数接受两个可选的关键字参数:

    • modification:session的最后修改,作为日期时间对象。 默认为当前时间。

    • expiry:session的有效期信息,以日期时间对象,整数(以秒为单位)或无。 如果为1,则默认为set_expiry()在会话中存储的值,否则为None。

  • clear_expired

    • 从session存储中删除过期的session。 此类方法由clearsessions调用。


官方文档:
https://docs.djangoproject.com/en/2.2/topics/http/sessions/

相关文章

注:所有源代码均实测运行过。所有源代码均已上传CSDN,请有...
继承APIView和ViewSetMixin;作用也与APIView基本类似,提供...
一、Django介绍Python下有许多款不同的 Web 框架。Django是重...
本文从nginx快速掌握到使用,gunicorn快速掌握到使用,实现小...
uniapp微信小程序订阅消息发送服务通知
Django终端打印SQL语句 1 Setting配置: 2 默认python 使用的...