redis存储session配制方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis存储session配制方法相关的知识,希望对你有一定的参考价值。
redis存储session配制方法需要三个模块;
1、redis
2、express-session
3、connect-redis
项目中的配置方法代码片段如下;
首先连接redis,连接redis数据库;
1 var redis = require(‘redis‘);
2 var redis_client = redis.createClient(‘6379‘, redis_host);
3 redis_client.on(‘error‘, function (err) { console.error(err); });
4 redis_client.on(‘connect‘, function() {});
配置express-session与connect-redis模块;
1 var session = require(‘express-session‘);
2 var RedisStore = require(‘connect-redis‘)(session);
3 var session_options = {
4 secret: system_secret_key,
5 saveUninitialized: true,
6 resave: false,
7 proxy: false,
8 rolling: true,
9 cookie: {maxAge: 30 * 24 * 60 * 60 * 1000, httpOnly: true, domain: is_development ? ‘‘ : ‘‘, secure: false}
10 };
11 //配置中间件;
12 app.use(session(_.extend({ store: new RedisStore({
13 client: redis_client,
14 ttl: 30 * 24 * 60 * 60
15 })}, session_options)));
不明白的几点,
1、session_options为什么不填入 new RedisStore({})里面,而是单独放在外面;
2、session_options设置cookie参数里面的时间和new RedisStore({})里面传入的ttl时间有什么不同;
3、关于_extend,此方法是lodash中的方法,但没找到用法说明,不知道是干什么的;
以上是关于redis存储session配制方法的主要内容,如果未能解决你的问题,请参考以下文章