Django的cookie和session

一、cookie

二、session

回到顶部

一、cookie

  1.特点

    1. cookie数据保存在客户端,以key-value存储

    2. cookie有过期时间,默认关闭浏览器过期

    3. cookie是基于域名安全的,浏览器在访问一个服务器,只会把跟这个服务器相关的cookie发送过去

  2.设置

    response = make_response('响应内容')

    response.set_cookie('<key>', '<value>', max_age='<过期时间: s>')  

  3.获取

    request.COOKIES.get('<key>')

  4.删除

    response.delete_cookie('<key>')

二、session

  1.特点

    1. session数据保存在服务器,以key-value存储

    2. session依赖于cookie,每个客户端的session信息标识保存在客户端cookie中

    3. session也有过期时间,flask开启session过期时间之后默认30天,django中session过期时间默认2周

  2.设置

    request.session['<key>'] = '<value>' 

  3.获取

    request.session.get('<key>')

  4.存储方式

    1.关系数据库

      默认存储方式:django_session

      SESSION_ENGINE='django.contrib.sessions.backends.db'

    2.缓存

      注意:Django框架缓存默认是服务器内存

      SESSION_ENGINE='django.contrib.sessions.backends.cache'

    3.混合存储

      SESSION_ENGINE='django.contrib.sessions.backends.cached_db'

    4. 将session信息存储到redis中

# 设置Django框架缓存的位置(如果不做设置,默认浏览器缓存)
# 此处要把Django框架的缓存改为redis
CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
# 设置redis数据库地址
"LOCATION": "redis://127.0.0.1:6379/1",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
},
"session": {
"BACKEND": "django_redis.cache.RedisCache",
# 设置redis数据库地址
"LOCATION": "redis://127.0.0.1:6379/2",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
},
} # 设置将Django框架的session存储到缓存中,上面已经把Django框架的缓存改为类redis
# 所以session就储存到redis中 
SESSION_ENGINE = "django.contrib.sessions.backends.cache"
# 设置session存储空间的名称
SESSION_CACHE_ALIAS = "default"

Django---cookie和session的更多相关文章

  1. Python Web框架篇:Django cookie和session

    part 1 概念 在Django里面,cookie和session都记录了客户端的某种状态,用来跟踪用户访问网站的整个回话. 两者最大的区别是cookie的信息是存放在浏览器客户端的,而sessio ...

  2. python Django cookie和session

    在一个会话的多个请求中共享数据,这就是会话跟踪技术.例如在一个会话中的请求如下:  请求银行主页: 请求登录(请求参数是用户名和密码): 请求转账(请求参数与转账相关的数据): 请求信誉卡还款(请求参 ...

  3. falsk 与 django cookie和session存、取、删的区别

    falsk cookie的存取删需导入from flask import Flask,make_response,request# 存COOKIE的方法@app.route('/setcookie') ...

  4. django cookie与session组件

    本文目录 1 会话跟踪技术 2 cookie介绍 Django中操作Cookie Session Django中Session相关方法 Django中的Session配置 CBV中加装饰器 回到目录 ...

  5. Django - Cookie、Session、自定义分页和Django分页器

    2. 今日内容 https://www.cnblogs.com/liwenzhou/p/8343243.html 1. Cookie和Session 1. Cookie 服务端: 1. 生成字符串 2 ...

  6. django cookie and session

    cookie和session 1.cookie不属于http协议范围,由于http协议无法保持状态,但实际情况,我们却又需要“保持状态”,因此cookie就是在这样一个场景下诞生. cookie的工作 ...

  7. django cookie、session

    Cookie.Session简介: Cookie.Session是一种会话跟踪技术,因为http请求都是无协议的,无法记录上一次请求的状态,所以需要cookie来完成会话跟踪,Seesion的底层是由 ...

  8. Django Cookie于Session

    一.Cookie与Session由来 因为Http协议的特性,每一次来自用户浏览器的请求都是无状态且独立的,通俗地说,就是无法保存用户状态,后台服务器根本就不知道当前请求和以前及以后请求是否来自同一用 ...

  9. Django—Cookie and Session

    一.Cookie Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密). 1. 应用 服务器可以利用Co ...

  10. Django cookie与session

    cookie与session关系 cookie 是保存在客户端浏览器的键值对,浏览器发送请求时候会自动携带. session 1.生成随机字符串 2.回给浏览器,让它写到cookie # {" ...

随机推荐

  1. Jenkins的详细安装及使用--windows

    操作环境:Windows 一.环境准备 1 安装JDK 本文采用jdk-8u111-windows-x64.exe: 2 配置tomcat 本文采用tomcat8,无需安装,配置JAVA_HOME及J ...

  2. Redis 数据结构之dict

    上篇文章<Redis数据结构概述>中,了解了常用数据结构.我们知道Redis以高效的方式实现了多种数据结构,因此把Redis看做为数据结构服务器也未尝不可.研究Redis的数据结构和正确. ...

  3. JS对象与原型链

    每个函数都存在一个prototype的属性,然后这个属性值为一个对象,我们称之为原型对象 每个对象都存在着一个隐藏的属性"__proto__" 这个属性引用了创建这个对象的函数的p ...

  4. E - Andrew and Taxi-二分答案-topo判环

    E - Andrew and Taxi 思路 :min max   明显二分答案,二分需要破坏的那些边的中机器人数量最多的那个. check 过程建边时直接忽略掉小于 mid 的边,这样去检验有无环存 ...

  5. react和redux版本不匹配

    1.页面报错Cannot read property 'shape' of undefined 2. 原因为:react版本与react-redux版本不匹配. 1.package.json文件修改该 ...

  6. ISP PIPLINE (四) Demosaic

    what is the Demosaic? CMOS/CCD在成像时,CFA(color filter array),CFA过滤不同频段的光,因此,Sensor的输出的RAW数据信号包含了3个通道的信 ...

  7. ISP PIPLINE (三) BPC

    what is the Bad Pixel? 坏点为死点,也就是基本不随照度变化呈现光电线性转换的关系.表现为暗态常亮,亮态常暗. 坏点分类:静态坏点:亮坏点,暗坏点.                 ...

  8. vim编辑器操作命令

    vim   [参数]   [文件 ..]         编辑指定的文件 或: vim   [参数]    -     从标准输入(stdin)读取文本 或: vim   [参数]    -t    ...

  9. DWM1000 测距原理简单分析 之 SS-TWR

    蓝点DWM1000 模块已经打样测试完毕,有兴趣的可以申请购买了,更多信息参见 蓝点论坛 正文: DWM1000 超宽带测距,使用的TOF(time of fly) 的方式,也就是计算无线电磁波传输时 ...

  10. XVIII Open Cup named after E.V. Pankratiev. Grand Prix of Peterhof

    A. City Wall 找规律. #include<stdio.h> #include<iostream> #include<string.h> #include ...