Django - Session

Django - Session 首页 / Django入门教程 / Django - Session

Django中的 Session 是一种在与django Web应用程序交互期间在服务器端存储少量信息的机制。 会话信息存储在数据库中,并允许基于缓存或基于文件的会话。 Django会话由 settings.py 中提到的中间件和会话应用实现,即 django.contrib.sessions.middleware.SessionMiddleware django.contrib.sessions

Set/Get Session

要在视图中设置并获取dango Session,可以使用 request.session 。也可以多次设置Session会话。

request.session

Session还可以使客户端存储的 Cookie 数据更加安全。 它可用于抽象化cookie的接收和发送,使用Session ID进行标识并将数据存储在数据库中。还可以使用Web浏览器中的not accept cookie设置。

Session示例

view.py 中提及以下代码

    from django.shortcuts import render  
    from django.http import HttpResponse  
      
    def setsession(request):  
        request.session['sname'] = 'Ram'  
        return HttpResponse("User session is set")  
        
    def getsession(request):  
        sname = request.session['sname']  
        return HttpResponse("Welcome " + sname);  
                                

首次访问该网址时,响应为:

User session is set

重新访问url响应将是:

Welcome Ram

Session超时

要在指定的时间戳(以秒为单位)后使django Session超时,请在settings.py中提及以下代码

    SESSION_COOKIE_AGE = 60 # for 60 seconds timestamp

要在指定的非活动时间戳记(以秒为单位)后使django Session 超时,请在settings.py中提及以下代码

无涯教程网

链接:https://www.learnfk.comhttps://www.learnfk.com/django/django-session.html

来源:LearnFk无涯教程网

pip install django-session-timeout
    MIDDLEWARE = [
    ...
    'django_session_timeout.middleware.SessionTimeoutMiddleware',
    ...
    ]
                                
    SESSION_EXPIRE_SECONDS = 30
    SESSION_EXPIRE_AFTER_LAST_ACTIVITY = True

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

邱岳的产品手记 -〔邱岳〕

移动端自动化测试实战 -〔思寒〕

Electron开发实战 -〔邓耀龙〕

流程型组织15讲 -〔蒋伟良〕

数据分析思维课 -〔郭炜〕

陈天 · Rust 编程第一课 -〔陈天〕

去无方向的信 -〔小麥〕

运维监控系统实战笔记 -〔秦晓辉〕

结构写作力 -〔李忠秋〕

好记忆不如烂笔头。留下您的足迹吧 :)