django中使用redis自动储存设置的session信息

10 篇文章 0 订阅
2 篇文章 0 订阅

废话不多说,直接上步骤:

pip install redis
pip install django-redis
pip install django-redis-sessions==0.5.6

先安装所需要的包
如果报类似于 WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘SSLError(SSLError(1, ‘[SSL
: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:777)’),)’: /simple/django-redis-sessions/
的错误

那么就是python的版本问题,版本太高了,需要做SSL的验证了
于是乎,你可以尝试这样写,以django-redis为例

pip install --trusted-host pypi.org django-redis

如果这样还是不行,再多给一点信任

pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org django-redis

这样就可以安装好了

然后进入settings.py文件中进行配置

SESSION_ENGINE = 'redis_sessions.session'
SESSION_REDIS_HOST = '127.0.0.1'   #如果你是配置在虚拟机或者云服务器上,改成其IP地址就行
SESSION_REDIS_PORT = 6379
SESSION_REDIS_DB = 0
SESSION_REDIS_PASSWORD = ''

#这个东西就是为key设置个前缀,比如session:asijdnaijnd(这段字符串代指唯一session唯一标识,作为存入redis数据的键)
SESSION_REDIS_PREFIX = 'session'  #但是在redis的windows版本上好像没什么效果,键直接就是session_id

启动redis数据库
然后写视图:

def set_session(request):
    request.session['username'] = '呼呼'
    request.session['password'] = 123456
    return HttpResponse('ok')

def get_session(request):
    username = request.session['username']
    password = request.session['password']
    return HttpResponse(username+':'+str(password))

再写个url

url(r'^set/session/$',views.set_session),
url(r'^get/session/$',views.get_session),

然后访问
在这里插入图片描述
打开redis的window版本的图形界面
在这里插入图片描述
可以看到生成的session已经成功保存进redis中了,键为session_id的值
然后我们把其生成的base64编码拿去解码
在这里插入图片描述
信息正确,那么就保存无误了,ok,暂时就分享到这里了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值