码迷,mamicode.com
首页 > 其他好文 > 详细

07 Redis存储Session

时间:2019-07-07 17:48:14      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:tap   ret   函数   dmi   默认   路由   ken   span   set   

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项目

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

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服务端,默认方式启动

redis-server &

redis-cli 连接无误
发送ping命令得到pong即可

启动django

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

标签:tap   ret   函数   dmi   默认   路由   ken   span   set   

原文地址:https://www.cnblogs.com/a2534786642/p/11146731.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!