zoukankan      html  css  js  c++  java
  • 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中的方法,但没找到用法说明,不知道是干什么的;

     

    坚持下去就能成功
  • 相关阅读:
    How Ironic Inspector Works
    tinyipa make
    dib build ipa image Injection password
    coreos ipa image Injection of public key
    Buildroot ipa image
    diskimage-builder
    ironic baremetal node rescue/unrescue mode
    OpenStack-Ironic裸金属简介
    Python之错误与异常处理
    Python之上下文管理协议
  • 原文地址:https://www.cnblogs.com/suoking/p/5192220.html
Copyright © 2011-2022 走看看