django-redis-sessions 官方文档:https://pypi.org/project/django-redis-sessions/

dango-redis 官方文档:http://niwinz.github.io/django-redis/latest/#_configure_as_cache_backend

安装模块:

  1. 安装模块
  2. pip3 install django-redis-sessions
  3. 或者
  4. pip3 install django-redis

本文这里用的是django 2.0语法,创建django项目

  1. django-admin startproject mydjango

修改settings.py文件加入字段:

  1. CACHES = {
  2. "default": {
  3. "BACKEND": "django_redis.cache.RedisCache",
  4. "LOCATION": "redis://127.0.0.1:6379/0",
  5. "OPTIONS": {
  6. "CLIENT_CLASS": "django_redis.client.DefaultClient",
  7. "PASSWORD": "",
  8. # "PARSER_CLASS": "redis.connection.HiredisParser",
  9. # "SOCKET_TIMEOUT": 10,
  10. # "CONNECTION_POOL_CLASS_KWARGS": {
  11. # "max_connections": 2,
  12. # }
  13. }
  14. }
  15. }
  16.  
  17. #SESSION_COOKIE_AGE = 30 * 60 #设置session过期时间为30分钟
  18. SESSION_ENGINE = 'django.contrib.sessions.backends.cache'

创建webapp

  1. django-admin startapp app01

编写session视图函数 webapp.views

  1. from django.shortcuts import render,HttpResponse
  2.  
  3. def set_session(request):
  4. request.session['username']='zhanan'
  5. request.session['age']=18
  6. return HttpResponse("设置sesson成功")
  7.  
  8. def get_session(request):
  9. username=request.session['username']
  10. age = request.session['age']
  11. return HttpResponse(username+":"+str(age))

添加url路由

vim mydjango/urls.py

  1. from django.contrib import admin
  2. from django.urls import path
  3. from webapp import views
  4. urlpatterns = [
  5. path('set_session/',views.set_session),
  6. path('get_session/',views.get_session),
  7. path('admin/', admin.site.urls),

确保启动redis服务端,默认方式启动

  1. redis-server &
  2.  
  3. redis-cli 连接无误
  4. 发送ping命令得到pong即可

启动django

  1. python3 manage.py runserver 0.0.0.0:8000

访问视图,设置一条session信息,存入redis数据库

检查redis数据库,是否存在一条key

  1. 127.0.0.1:6379> keys *
  2. 1) ":1:django.contrib.sessions.cachep220moqvxclz2hyjqmbybqs3v8ck2i39"
  3.  
  4. 获取这个key的值
  5. 127.0.0.1:6379> get :1:django.contrib.sessions.cachep220moqvxclz2hyjqmbybqs3v8ck2i39
  6. "\x80\x04\x95!\x00\x00\x00\x00\x00\x00\x00}\x94(\x8c\busername\x94\x8c\x06chaoge\x94\x8c\x03age\x94K\x12u."

07 Redis存储Session的更多相关文章

  1. Tomcat 使用Redis存储Session

    Tomcat Redis Session Github 地址. 下载 commons-pool2-2.2.jar,jedis-2.5.2.jar,tomcat-redis-session-manage ...

  2. Asp.net Core 使用Redis存储Session

    前言 Asp.net Core 改变了之前的封闭,现在开源且开放,下面我们来用Redis存储Session来做一个简单的测试,或者叫做中间件(middleware). 对于Session来说褒贬不一, ...

  3. Redis存储Session

    net Core 使用Redis存储Session   前言 Asp.net Core 改变了之前的封闭,现在开源且开放,下面我们来用Redis存储Session来做一个简单的测试,或者叫做中间件(m ...

  4. redis存储session配制方法

    redis存储session配制方法需要三个模块: 1.redis 2.express-session 3.connect-redis 项目中的配置方法代码片段如下: 首先连接redis,连接redi ...

  5. 几分钟搞定redis存储session共享——设计实现

    前面我们写过C#在redis中存储常用的5种数据类型demo,没看过的可以点击电梯直达:https://www.cnblogs.com/xiongze520/p/10267804.html 我们上一篇 ...

  6. Spring Boot+redis存储session,满足集群部署、分布式系统的session共享

    本文讲述spring-boot工程中使用spring-session机制进行安全认证,并且通过redis存储session,满足集群部署.分布式系统的session共享. 原文链接:https://w ...

  7. Redis使用示例及在PHP环境中用redis存储session

    在文件夹redis-3.2.0下 1. 启动redis服务 nohup ./src/redis-server redis.conf & 2. 停止服务 #使用客户端 ./src/redis-c ...

  8. [转]Asp.net Core 使用Redis存储Session

    本文转自:http://www.cnblogs.com/hantianwei/p/5723959.html 前言 Asp.net Core 改变了之前的封闭,现在开源且开放,下面我们来用Redis存储 ...

  9. springboot项目中的普通Session和使用redis存储session

    普通session: session store type使用来存放session的存储方式,目前Spring boot中只支持Redis方式, 由于本应用暂无需将session放入redis的需求, ...

随机推荐

  1. 风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift)

    python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...

  2. Npoi Web 项目中(XSSFWorkbook) 导出出现无法访问已关闭的流

    NPOI生产.xlsx文件件时,在使用book.Write(ms);后,会关闭流,这样导致再次使用Respons输出流的时候就出错了. 造成关闭流的主要原因有时其实是跨域,同域是没有问题的. //新建 ...

  3. git如何添加子模块以便方便使用别人维护的模块?

    答: 添加过程如下: 1. 在当前项目的源码下执行一下命令来添加子模块 git submoduel add <other_repository_url> <dir_name> ...

  4. MySQL表的创建与维护

    一.导入测试数据 [root@server ~]# wget https://launchpadlibrarian.net/24493586/employees_db-full-1.0.6.tar.b ...

  5. VLC播放器web插件接口(Part2)

    本文转自:http://www.educity.cn/wenda/124878.htmlVLC Activex控件(VideoLAN.VLCPlugin.1 VideoLAN.VLCPlugin.2) ...

  6. Python 利用二分法查询数据

    一. 二分法的适用条件 二分法查找适用于数据量较大时, 但是数据需要先排好顺序. 优点: 二分法查找效率特别高 缺点: 二分法只适用于有序序列 二. 二分法的主要思想是:设查找的数组区间为array[ ...

  7. Css3 权重

    Css权重 权重--很多规则应用到同一个元素上时,权重是决定哪个生效的(优先级) 权重等级与权值 行内样式(1000)>ID选择器(100)>类.属性选择器或伪类选择器(10)>元素 ...

  8. Flutter打包release版本安卓apk包真机安装无法请求网络的解决方法

    今天flutter build apk打包了一个release.apk包,在真机上安装后网络数据都不显示,但是在模拟器上没问题,然后又连接真机开debug各种测试,一切都正常!那这会是什么问题呢? 查 ...

  9. 解决element-ui按需引入不了Scrollbar的问题

    一.报错原因 在我想按需引入element-ui时,突然报错: 这个报错来的有点措不及防.明明在页面当中能够使用,为仕么在单独引入时却不能引用了,真是百思不得其解. 经过在百度上的查找才知道,原来Sc ...

  10. bootstrap基础学习【排版】(一)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...